After upgrade to ATST plugin version 2.18.0 or 3.11.0 , Confluence is encountering performance issues along with OOM exceptions causing the application to crash

XMLWordPrintable

    • 6
    • Severity 1 - Critical
    • 57
    • Hide

      We released two new versions of ATST that fix the issue: 2.19.1 and 3.12.0+. They are publicly available on the marketplace for customers to update.

      Show
      We released two new versions of ATST that fix the issue:  2.19.1  and  3.12.0+ . They are publicly available on the marketplace for customers to update.

      Issue Summary

      After upgrade to ATST plugin version 2.18.0 or 3.11.0(Confluence 10.2.x) , Confluence is encountering performance issues along with OOM exceptions causing the application to crash

      Steps to Reproduce

      1. Install Confluence version 9.2.19
      2. Upgrade ATST plugin to 2.18.0 from Manage Apps page
      3. Ensure your confluence has large number of attachments
      4. Wait for the DCDP diagnostics transfer job to run

      Expected Results

      • DCDP diagnostics transfer job runs without issues

      Actual Results

      DCDP diagnostics transfer job failing with OOM exceptions

      2026-04-28 04:14:06,208 ERROR [Caesium-1-2] [scheduler.caesium.impl.SchedulerQueueWorker] executeJob Unhandled exception thrown by job QueuedJob[jobId=DcdpTransferJob,deadline=1777339636941]
      java.lang.OutOfMemoryError: Java heap space 

      Heap dump analysis

      Suspect 1 which is occupying 96% of the heap

      The thread java.lang.Thread @ 0x7fe3f50d88a0 Caesium-1-1 keeps local variables with total size 56,513,755,960 (96.70%) bytes. The memory is accumulated in one instance of “java.util.HashMap$Node[]”, loaded by “<system class loader>”, which occupies 56,512,028,696 (96.70%) bytes. The stacktrace of this Thread is available. See stacktrace. See stacktrace with involved local variables

      Keywords

      java.util.HashMap$Node[] com.atlassian.dc.filestore.security.validation.TreeWalkingFilePermissionExaminer.getFilePermissions(Ljava/nio/file/Path;Lcom/atlassian/dc/filestore/api/security/validation/FilePermissionSchemeValidationOptions;)Lcom/atlassian/dc/filestore/security/validation/FilePermissionExaminer$Result; TreeWalkingFilePermissionExaminer.java:27 

      Stack trace

      Caesium-1-1
        at sun.nio.fs.UnixNativeDispatcher.open0(JII)I (Native Method)
        at sun.nio.fs.UnixNativeDispatcher.open(Lsun/nio/fs/UnixPath;II)I (Unknown Source)
        at sun.nio.fs.UnixFileSystemProvider.newDirectoryStream(Ljava/nio/file/Path;Ljava/nio/file/DirectoryStream$Filter;)Ljava/nio/file/DirectoryStream; (Unknown Source)
        at java.nio.file.Files.newDirectoryStream(Ljava/nio/file/Path;)Ljava/nio/file/DirectoryStream; (Unknown Source)
        at java.nio.file.FileTreeWalker.visit(Ljava/nio/file/Path;ZZ)Ljava/nio/file/FileTreeWalker$Event; (Unknown Source)
        at java.nio.file.FileTreeWalker.next()Ljava/nio/file/FileTreeWalker$Event; (Unknown Source)
        at java.nio.file.Files.walkFileTree(Ljava/nio/file/Path;Ljava/util/Set;ILjava/nio/file/FileVisitor;)Ljava/nio/file/Path; (Unknown Source)
        at java.nio.file.Files.walkFileTree(Ljava/nio/file/Path;Ljava/nio/file/FileVisitor;)Ljava/nio/file/Path; (Unknown Source)
        at com.atlassian.dc.filestore.security.validation.TreeWalkingFilePermissionExaminer.getFilePermissions(Ljava/nio/file/Path;Lcom/atlassian/dc/filestore/api/security/validation/FilePermissionSchemeValidationOptions;)Lcom/atlassian/dc/filestore/security/validation/FilePermissionExaminer$Result; (TreeWalkingFilePermissionExaminer.java:27)
        at com.atlassian.dc.filestore.security.validation.DefaultPermissionSchemeValidator.lambda$validate$1(Lcom/atlassian/dc/filestore/security/validation/FilePermissionExaminer;Lcom/atlassian/dc/filestore/api/security/validation/FilePermissionSchemeValidationOptions;Ljava/nio/file/Path;)Lcom/atlassian/dc/filestore/security/validation/FilePermissionExaminer$Result; (DefaultPermissionSchemeValidator.java:86)
        at com.atlassian.dc.filestore.security.validation.DefaultPermissionSchemeValidator$$Lambda+0x00007fe3110bf380.apply(Ljava/lang/Object;)Ljava/lang/Object; (Unknown Source)
      ...
      at com.atlassian.troubleshooting.dcdp.features.securitymetrics.AbstractFilePermissionSecurityMetricProvider.getSecurityMetricData()Lcom/atlassian/troubleshooting/dcdp/features/securitymetrics/DcdpSecurityMetricProvider$SecurityMetricData; (AbstractFilePermissionSecurityMetricProvider.java:48)
        at com.atlassian.troubleshooting.dcdp.features.securitymetrics.DcdpSecurityMetricsRetriever.lambda$retrieveMetrics$0(JLcom/atlassian/troubleshooting/dcdp/features/securitymetrics/DcdpSecurityMetricProvider;)Lcom/atlassian/troubleshooting/dcdp/api/HealthIndicator; (DcdpSecurityMetricsRetriever.java:34)
        at com.atlassian.troubleshooting.dcdp.features.securitymetrics.DcdpSecurityMetricsRetriever$$Lambda+0x00007fe310c75250.apply(Ljava/lang/Object;)Ljava/lang/Object; (Unknown Source)

      Workaround

      To mitigate the issue, please follow the below steps

      1. You can disable just the DCDP security metric collection via a dark feature:

      1. Log in as a Confluence admin.
      2. Go to: <confluence-base-url>/admin/darkfeatures.action
      3. In Enable dark feature, add:
      com.atlassian.troubleshooting.dcdp.security.metric.collection.disabled 
      1. and submit.
      2. Confirm it appears in the list of enabled dark features.

      2. System property (persistent, requires restart):

      1. Edit {{setenv.sh }}and add:
      CATALINA_OPTS="-Datlassian.darkfeature.com.atlassian.troubleshooting.dcdp.security.metric.collection.enabled=false ${CATALINA_OPTS}" 
      1. Restart all Confluence nodes.

              Assignee:
              Murillo Ichikawa
              Reporter:
              Shivangi Nayak
              Votes:
              4 Vote for this issue
              Watchers:
              12 Start watching this issue

                Created:
                Updated:
                Resolved: