_Node cloneNode() { _Node newNode = new _Node(mUsageList, mPage); newNode.mId = mId; newNode.mCachedState = mCachedState; /*P*/ // [ // newNode.type(type()); // newNode.garbage(garbage()); // newNode.leftSegTail(leftSegTail()); // newNode.rightSegTail(rightSegTail()); // newNode.searchVecStart(searchVecStart()); // newNode.searchVecEnd(searchVecEnd()); /*P*/ // ] return newNode; }
_Node cloneNode() { _Node newNode = new _Node(mUsageList, mPage); newNode.mId = mId; newNode.mCachedState = mCachedState; /*P*/ // [ // newNode.type(type()); // newNode.garbage(garbage()); // newNode.leftSegTail(leftSegTail()); // newNode.rightSegTail(rightSegTail()); // newNode.searchVecStart(searchVecStart()); // newNode.searchVecEnd(searchVecEnd()); /*P*/ // ] return newNode; }
_Node cloneNode() { _Node newNode = new _Node(mContext, mPage); newNode.mId = mId; newNode.mCachedState = mCachedState; /*P*/ // [ // newNode.type(type()); // newNode.garbage(garbage()); // newNode.leftSegTail(leftSegTail()); // newNode.rightSegTail(rightSegTail()); // newNode.searchVecStart(searchVecStart()); // newNode.searchVecEnd(searchVecEnd()); /*P*/ // ] return newNode; }
/** * Caller must have exclusively latched the tree root node instance and the lone child node. * * @param child must not be a leaf node */ final void rootDelete(_Node child) throws IOException { // Allocate stuff early in case of out of memory, and while root is latched. Note that // stub is assigned a _NodeUsageList. Because the stub isn't in the list, attempting to // update its position within it has no effect. Note too that the stub isn't placed // into the database node map. _Node stub = new _Node(mRoot.mUsageList); // Stub isn't in the node map, so use this pointer field to link the stubs together. stub.mNodeMapNext = mStubTail; mStubTail = stub; mRoot.rootDelete(this, child, stub); }
/** * Caller must have exclusively latched the tree root node instance and the lone child node. * * @param child must not be a leaf node */ final void rootDelete(_Node child) throws IOException { // Allocate stuff early in case of out of memory, and while root is latched. Note that // stub is assigned a _NodeContext. Because the stub isn't in the context usage list, // attempting to update its position within it has no effect. Note too that the stub // isn't placed into the database node map. _Node stub = new _Node(mRoot.mContext); // Stub isn't in the node map, so use this pointer field to link the stubs together. stub.mNodeMapNext = mStubTail; mStubTail = stub; mRoot.rootDelete(this, child, stub); }
/** * Caller must have exclusively latched the tree root node instance and the lone child node. * * @param child must not be a leaf node */ final void rootDelete(_Node child) throws IOException { // Allocate stuff early in case of out of memory, and while root is latched. Note that // stub is assigned a _NodeUsageList. Because the stub isn't in the list, attempting to // update its position within it has no effect. Note too that the stub isn't placed // into the database node map. _Node stub = new _Node(mRoot.mUsageList); // Stub isn't in the node map, so use this pointer field to link the stubs together. stub.mNodeMapNext = mStubTail; mStubTail = stub; mRoot.rootDelete(this, child, stub); }
private static _Node createClosedNode() { _Node closed = new _Node(null, p_closedTreePage()); closed.mId = CLOSED_ID; closed.mCachedState = CACHED_CLEAN; closed.readFields(); return closed; }
private static _Node createClosedNode() { _Node closed = new _Node(null, p_closedTreePage()); closed.mId = CLOSED_ID; closed.mCachedState = CACHED_CLEAN; closed.readFields(); return closed; }
private static _Node createClosedNode() { _Node closed = new _Node(null, p_closedTreePage()); closed.mId = CLOSED_ID; closed.mCachedState = CACHED_CLEAN; closed.readFields(); return closed; }
/*P*/ // ] _Node node = new _Node(this, page); node.acquireExclusive(); mSize++;
/*P*/ // ] _Node node = new _Node(this, page); node.acquireExclusive(); mSize++;
/*P*/ // ] _Node node = new _Node(this, page); node.acquireExclusive(); mSize++;
lock = new _Node(childId);
lock = new _Node(childId);
lock = new _Node(childId);