Details

    • ACT Numbers:

      01003892, 01005835

      Description

      DESCRIPTION
      The result set from the SQL query run by the trashcan-cleaner job can lead to performance issues or OOM crashes where the repository has a lot of deleted nodes.
      The query returns all children of the archive workspace at each execution and doesn't take the trashcan congfiguration settings into account

       trashcan-cleaner.cron=0 30 * * * ?
       trashcan-cleaner.keepPeriod=P1D
       trashcan-cleaner.deleteBatchCount=1000

      REPRODUCTION
      Enable the trashcan cleaner job

      1. Set the keepPeriod to 2 hours
      2. Set the deleteBatchCount to 50
      3. Set the cron to 15 minute intervals
      trashcan-cleaner.cron=0 15 * * * ?
      trashcan-cleaner.keepPeriod=P2H
      trashcan-cleaner.deleteBatchCount=50
      1. Enable SQL tracing to capture the result set being returned - eg: P6Spy
      2. Restart Alfresco
      3. Delete a lot of content (10000 nodes) into the trashcan

      EXPECTED
      The SQL result should reflect the setting for the job. For example if the keepPeriod was P30D (30 days) the result set should reflect that along with the batch count of 50

      OBSERVED
      Regardless of the settings, all archive nodes are returned at each execution of the job. With larger result sets, this can fill the heap and trigger excessive garbage collection or even OOM errors

      OTHER

      The customer identified the following in mitigation:

       

        Attachments

          Structure

            Activity

              People

              • Assignee:
                repositoryteam Repository Team
                Reporter:
                joswald Jamie Oswald
              • Votes:
                1 Vote for this issue
                Watchers:
                6 Start watching this issue

                Dates

                • Created:
                  Updated:

                  Structure Helper Panel