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

Possibility for a Deadlock in FineGrainedISMLocking in a XA Environment

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 2.13.1
    • 2.13.2, 2.14
    • jackrabbit-core
    • None

    Description

      We have seen a deadlock in the FineGrainedISMLocking in our XA Environment.

      The deadlock will occur if the xa client connects to jackrabbit with 2 different credentials (xa-resources) during a global transaction.
      If that happens the FineGrainedISMLocking will create a lock from xa-resource-1 during the prepare phase. The lock creates the SISM
      in the Update.begin() Method.
      The xa-resource-2 tries also to create a lock but can not allocate it because the first created lock would be realesed in the commit phase.

      The FineGrainedISMLocking should re-allocate the lock if it comes from the same gloal transaction.
      This behaviour is already implemented in the DefaultISMLocking.

      Attachments

        1. JCR-3999.patch
          1 kB
          Claus Köll

        Activity

          People

            c_koell Claus Köll
            c_koell Claus Köll
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: