Uploaded image for project: 'Sling'
  1. Sling
  2. SLING-4853

JobManager.findJobs should skip items that have been removed during the call

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: Event 3.7.2
    • Component/s: Extensions
    • Labels:

      Description

      Sometimes under high load the iteration over job nodes can fail [1] because the nodes could be already processed and removed. We could by more fault tolerant when reading a resource and just skip it in case of failure.

      Caused by: java.lang.IllegalStateException: Failed to retrieve path from Item:
      at org.apache.sling.jcr.resource.internal.helper.jcr.JcrItemResource.getPath(JcrItemResource.java:82)
      at org.apache.sling.event.impl.jobs.JobManagerImpl.findJobs(JobManagerImpl.java:659)
      at com.day.cq.replication.impl.queue.ReplicationQueueImpl.entries(ReplicationQueueImpl.java:144)
      Caused by: javax.jcr.InvalidItemStateException: This item does not exist anymore
      at org.apache.jackrabbit.oak.jcr.delegate.ItemDelegate.checkAlive(ItemDelegate.java:85)
      at org.apache.jackrabbit.oak.jcr.session.operation.ItemOperation.checkPreconditions(ItemOperation.java:34)
      at org.apache.jackrabbit.oak.jcr.delegate.SessionDelegate.perform(SessionDelegate.java:289)
      at org.apache.jackrabbit.oak.jcr.session.ItemImpl.perform(ItemImpl.java:113)
      at org.apache.jackrabbit.oak.jcr.session.ItemImpl.getPath(ItemImpl.java:153)
      

      [1] https://github.com/apache/sling/blob/29420e3482d610c1dd9741276388670474026bf6/bundles/extensions/event/src/main/java/org/apache/sling/event/impl/jobs/JobManagerImpl.java#L662

        Attachments

        1. SLING-4853.1.diff
          0.8 kB
          Marius Petria
        2. SLING-4853.diff
          1 kB
          Marius Petria

          Issue Links

            Activity

              People

              • Assignee:
                mpetria Marius Petria
                Reporter:
                mpetria Marius Petria
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: