Uploaded image for project: 'Confluence Data Center'
  1. Confluence Data Center
  2. CONFSERVER-43043

Race condition between hibernate and cluster lock in cluster safety manager

    XMLWordPrintable

Details

    Description

      DB transaction for cluster safety check job is created and committed by Spring's TransactionInterceptor.

      Transaction creation and commit happens outside the cluster safety check job, so after the job has finished its work and released cluster lock, the result of the job's invocation is not committed for a short period of time.

      This means it's possible that the cluster safety check job on another node is fast enough to acquire the lock and read "stale" data from the database, before the previous job has committed data into the database.

      Attachments

        Issue Links

          Activity

            People

              mfedoryshyn Maksym Fedoryshyh
              mfedoryshyn Maksym Fedoryshyh
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: