Examples of releaseLatch()


Examples of com.sleepycat.je.tree.BIN.releaseLatch()

        EnvironmentImpl envImpl = DbInternal.envGetEnvironmentImpl(env);
        BIN bin = (BIN)tree.getFirstNode();
        bin.log(envImpl.getLogManager(), true, false, false, null);
        bin = tree.getNextBin(bin, null);
        bin.log(envImpl.getLogManager(), true, false, false, null);
        bin.releaseLatch();

        /*
         * Delete all of left hand side of the tree, so that the subtree root
         * headed by IN2 is compressed.
         */
 
View Full Code Here

Examples of com.sleepycat.je.tree.BIN.releaseLatch()

      BIN waitingOn = bin;
      waitingOn.latch();
      if (bin == waitingOn) {
    return bin;
      }
      waitingOn.releaseLatch();
  }

  return null;
    }
View Full Code Here

Examples of com.sleepycat.je.tree.BIN.releaseLatch()

      BIN waitingOn = dupBin;
      waitingOn.latch();
      if (dupBin == waitingOn) {
    return dupBin;
      }
      waitingOn.releaseLatch();
  }
  return null;
    }

    public void releaseDBIN()
View Full Code Here

Examples of com.sleepycat.je.tree.BIN.releaseLatch()

  throws DatabaseException {

  BIN abin = latchBIN();
  if (abin != null) {
      abin.removeCursor(this);
      abin.releaseLatch();
  }
    }

    private void removeCursorDBIN()
  throws DatabaseException {
View Full Code Here

Examples of com.sleepycat.je.tree.DBIN.releaseLatch()

  throws DatabaseException {
 
  DBIN abin = latchDBIN();
  if (abin != null) {
      abin.removeCursor(this);
      abin.releaseLatch();
  }
    }

    public void dumpTree()
        throws DatabaseException {
View Full Code Here

Examples of com.sleepycat.je.tree.DIN.releaseLatch()

                 * we can check whether the lock owner's abort LSN is greater
                 * than the log LSN; if so, the log LSN is obsolete.  Before
                 * doing this we must release all latches to avoid a deadlock.
     */
                if (parentDIN != null) {
                    parentDIN.releaseLatch();
                    parentDIN = null;
                }
                bin.releaseLatch();
    long abortLsn = locker.getOwnerAbortLsn(nodeId);
    if (abortLsn != DbLsn.NULL_LSN &&
View Full Code Here

Examples of com.sleepycat.je.tree.DIN.releaseLatch()

            dupRoot.latch();
      releaseBIN();
            DupCountLN dupCountLN = (DupCountLN)
                dupRoot.getDupCountLNRef().fetchTarget(database, dupRoot);
            /* We can't hold latches when we acquire locks. */
            dupRoot.releaseLatch();
            getReadLock(dupCountLN, LockType.READ);
            dupRootCount = dupCountLN.getDupCount();
        } else {
      releaseBIN();
        }
View Full Code Here

Examples of com.sleepycat.je.tree.DIN.releaseLatch()

             * duplicate tree, we also have to update the duplicate tree count.
             */
            ChildReference dupCountRef = dupRoot.getDupCountLNRef();
            DupCountLN dcl = (DupCountLN)
                dupCountRef.fetchTarget(database, dupRoot);
            dupRoot.releaseLatch();
            LockResult dclGrantAndInfo = locker.lock
                (dcl.getNodeId(), LockType.WRITE, database);
            /*
             * The write lock request might have blocked while waiting for a
View Full Code Here

Examples of com.sleepycat.je.tree.DIN.releaseLatch()

      assert dcl.getDupCount() >= 0;
            EnvironmentImpl envImpl = database.getDbEnvironment();
            long dupCountLsn =
                dcl.log(envImpl, database.getId(), dupKey, oldDclLsn, locker);
            dupRoot.updateDupCountLNRef(dupCountLsn);
            dupRoot.releaseLatch();

            locker.addDeleteInfo(dupBin, new Key(lnKey));
        } else {
            locker.addDeleteInfo(bin, new Key(lnKey));
        }
View Full Code Here

Examples of com.sleepycat.je.tree.IN.releaseLatch()

                        /* Stats */
                        nRootNodesEvicted.increment();
                    }
                } finally {
                    rootIN.releaseLatch();
                }

                return null;
            }
        }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.