Uploaded image for project: 'Jackrabbit Content Repository'
  1. Jackrabbit Content Repository
  2. JCR-790

Possible deadlock during concurrent operations on versionable nodes

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Duplicate
    • 1.2.1
    • None
    • versioning
    • None

    Description

      As discussed on the dev mailing-list:

      We are using the Repository Server deployment model for one of our systems, with 3 different web applications using the same jackrabbit 1.2.1 server.
      Two of the webapps are read-only frontoffice clients, the third one is a read-write backoffice.

      Sometimes the jackrabbit-server enters a deadlock and stops answering requests until it is restarted. A thread dump of the deadlock situation is attached.

      From the thread dump analysis provided by Marcel Reutegger (attached too), it appears that two threads are indeed deadlocked while attempting to save() versionable items, after acquiring locks (Workspace SISM/VersionManager) in different orders.
      This appears to be the case only because the items being saved are versionable, and because one of them is a new item, which means that the VersionHistory is being created.

      We couldn't find an easy way to reproduce this concurrency issue, as it doesn't happen very often, but it takes down our whole system when it does.

      Note: if that matters, some of the client applications are using jackrabbit-jcr-rmi-1.1.jar and jackrabbit-jcr-core-1.1.jar to talk to this jackrabbit 1.2.1 server.

      Attachments

        1. jackrabbit-thread-dump.log.zip
          48 kB
          Olivier Dony
        2. thread-dump-analysis.txt.zip
          1 kB
          Olivier Dony

        Issue Links

          Activity

            People

              Unassigned Unassigned
              odony Olivier Dony
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: