Uploaded image for project: 'ManifoldCF'
  1. ManifoldCF
  2. CONNECTORS-1126

Lock manager's lock ordering not working as designed

    XMLWordPrintableJSON

Details

    Description

      The LockGate logic for flushing a LockGate is as follows:

          synchronized (lockObject)
          {
            if (lockObject.leaveReadLock())
            {
              if (lockPool != null)
                lockPool.releaseObject(lockKey, this);
            }
          }
      

      Unfortunately, this has the side effect of causing the nicely ordered thread queue to be destroyed on the first time a lock is exited. That kills ordering and makes LockGate essentially do nothing of value.

      Attachments

        1. CONNECTORS-1126.patch
          2 kB
          Karl Wright

        Activity

          People

            kwright@metacarta.com Karl Wright
            kwright@metacarta.com Karl Wright
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: