Backup and Recovery Health Check from ATST fails intermittently with "java.nio.file.NoSuchFileException"

XMLWordPrintable

    • 9.12
    • 8
    • Severity 3 - Minor
    • 62

      Issue Summary

      Indexing > "Backup and Recovery" Health Check fails intermittently with the error below:

      Exception during health check invocation java.io.UncheckedIOException: java.nio.file.NoSuchFileException: <local-home>/caches/indexesV2/issues/<filename>.<ext>
      

      File name and extension is not consistent and may change at any time. 

      Steps to Reproduce

      Unable to reproduce consistently. 

      Expected Results

      Health Check Backup and Recovery should retry a few times without triggering an alert to Jira Admins. 

      It should only trigger the alerts described on "Health check: Storage index snapshot"

      Actual Results

      The below exception is thrown in the atlassian-jira.log file (paths and filenames were replaced):

      2024-12-11 08:13:41,516+0000 HealthCheckWatchdog:thread-7 WARN      [c.a.t.healthcheck.concurrent.SupportHealthCheckTask] Unable to complete execution of health check Backup and recovery due to an exception
      java.util.concurrent.ExecutionException: java.io.UncheckedIOException: java.nio.file.NoSuchFileException: <local-home>/caches/indexesV2/issues/<filename>.<ext>
      	at java.base/java.util.concurrent.FutureTask.report(FutureTask.java:122)
      	at java.base/java.util.concurrent.FutureTask.get(FutureTask.java:205)
      	at com.atlassian.troubleshooting.healthcheck.concurrent.SupportHealthCheckTask.getFutureWithTimeout(SupportHealthCheckTask.java:97)
      	at com.atlassian.troubleshooting.healthcheck.concurrent.SupportHealthCheckTask.lambda$runAsync$0(SupportHealthCheckTask.java:77)
      	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
      	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
      	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
      	at java.base/java.lang.Thread.run(Thread.java:829)
      Caused by: java.io.UncheckedIOException: java.nio.file.NoSuchFileException: <local-home>/caches/indexesV2/issues/<filename>.<ext>
      	at org.apache.commons.io.function.Uncheck.wrap(Uncheck.java:339)
      	at org.apache.commons.io.function.Uncheck.get(Uncheck.java:199)
      	at org.apache.commons.io.FileUtils.sizeOfDirectory(FileUtils.java:2909)
      	at com.atlassian.troubleshooting.jira.healthcheck.util.CachedDirectorySizeEstimator.sizeOfFile(CachedDirectorySizeEstimator.java:46)
      	at com.atlassian.troubleshooting.jira.healthcheck.support.StorageIndexSnapshotHealthCheck.checkFreeDiskSpaceForIndex(StorageIndexSnapshotHealthCheck.java:111)
      	at com.atlassian.troubleshooting.jira.healthcheck.support.StorageIndexSnapshotHealthCheck.check(StorageIndexSnapshotHealthCheck.java:85)
      	at com.atlassian.troubleshooting.healthcheck.impl.PluginSuppliedSupportHealthCheck.check(PluginSuppliedSupportHealthCheck.java:66)
      	... 4 more
      Caused by: java.nio.file.NoSuchFileException: <local-home>/caches/indexesV2/issues/<filename>.<ext>
      	at java.base/sun.nio.fs.UnixException.translateToIOException(UnixException.java:92)
      	at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:111)
      	at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:116)
      	at java.base/sun.nio.fs.UnixFileAttributeViews$Basic.readAttributes(UnixFileAttributeViews.java:55)
      	at java.base/sun.nio.fs.UnixFileSystemProvider.readAttributes(UnixFileSystemProvider.java:149)
      	at java.base/sun.nio.fs.LinuxFileSystemProvider.readAttributes(LinuxFileSystemProvider.java:99)
      	at java.base/java.nio.file.Files.readAttributes(Files.java:1764)
      	at java.base/java.nio.file.FileTreeWalker.getAttributes(FileTreeWalker.java:219)
      	at java.base/java.nio.file.FileTreeWalker.visit(FileTreeWalker.java:276)
      	at java.base/java.nio.file.FileTreeWalker.next(FileTreeWalker.java:373)
      	at java.base/java.nio.file.Files.walkFileTree(Files.java:2761)
      	at java.base/java.nio.file.Files.walkFileTree(Files.java:2797)
      	at org.apache.commons.io.file.PathUtils.visitFileTree(PathUtils.java:1730)
      	at org.apache.commons.io.file.PathUtils.countDirectory(PathUtils.java:351)
      	at org.apache.commons.io.file.PathUtils.sizeOfDirectory(PathUtils.java:1668)
      	at org.apache.commons.io.FileUtils.lambda$sizeOfDirectory$15(FileUtils.java:2909)
      	at org.apache.commons.io.function.Uncheck.get(Uncheck.java:197)
      	... 9 more 
      
      

      Subsequent Health Checks for Backup and Recovery may work and the error will not be displayed. 

      This issue have been observed even with the proper permissions in place for Jira user.
      Still, double-check if there are no permission issues in the <local-home> for the Jira user.

      Workaround

      Currently there is no known workaround for this behavior. A workaround will be added here when available

            Assignee:
            Calum Leslie
            Reporter:
            Bruno
            Votes:
            5 Vote for this issue
            Watchers:
            14 Start watching this issue

              Created:
              Updated:
              Resolved: