public static class IndexSegment.ImmutableNodeFactory.ImmutableNode extends Node
UnsupportedOperationException
for the
public mutator API but does not try to override all low-level
mutation behaviors.btree, DEBUG, log, parent, referenceCount, self
NULL
Modifier | Constructor and Description |
---|---|
protected |
IndexSegment.ImmutableNodeFactory.ImmutableNode(AbstractBTree btree,
long addr,
INodeData data) |
Modifier and Type | Method and Description |
---|---|
void |
delete()
Deletes the persistence capable object.
|
Tuple |
insert(byte[] key,
byte[] val,
boolean deleted,
boolean putIfAbsent,
long timestamp,
Tuple tuple)
Insert or update a value.
|
Tuple |
remove(byte[] key,
Tuple tuple)
Recursive search locates the appropriate leaf and removes the entry for
the key.
|
childIterator, childIterator, data, dump, findChild, getChild, getChildAddr, getChildCount, getChildEntryCount, getChildRef, getDelegate, getIndexOf, getKeyCount, getKeys, getLeftSibling, getMaximumVersionTimestamp, getMinimumVersionTimestamp, getRightMostChild, getRightSibling, getSpannedTupleCount, hasVersionTimestamps, indexOf, insertChild, isCoded, isLeaf, isReadOnly, keyAt, lookup, maxKeys, merge, minKeys, postOrderIterator, postOrderNodeIterator, prefetchChildLeaves, prefetchRightSibling, rangeCheckChildIndex, rangeCheckSpannedTupleIndex, redistributeKeys, removeChild, split, toString, updateEntryCount, updateMinMaxVersionTimestamp, valueAt
assertInvariants, assertKeysMonotonic, copyKey, copyOnWrite, copyOnWrite, dump, dump, entryIterator, getBranchingFactor, getParent, isLeftMostNode, isRightMostNode, join, keyAsString, postOrderNodeIterator, postOrderNodeIterator, rangeIterator
getIdentity, indent, isDeleted, isDirty, isPersistent, setDirty, setIdentity, toShortString
protected IndexSegment.ImmutableNodeFactory.ImmutableNode(AbstractBTree btree, long addr, INodeData data)
btree
- addr
- data
- public void delete()
IIdentityAccess
delete
in interface IIdentityAccess
delete
in class Node
public Tuple insert(byte[] key, byte[] val, boolean deleted, boolean putIfAbsent, long timestamp, Tuple tuple)
AbstractNode
insert
in class Node
key
- The key (non-null).val
- The value (may be null).deleted
- true
iff the entry is to marked as deleted
(delete markers must be supported for if this is true).putIfAbsent
- When true
, a pre-existing entry for the key will
NOT be replaced (unless it is a deleted tuple, which is the
same as if there was no entry under the key). This should ONLY
be true when the top-level method is putIfAbsent
.
Historical code paths should specify false for an unconditional
mutation. See BLZG-1539.timestamp
- The timestamp associated with the version (the value is
ignored unless version metadata is being maintained).tuple
- A tuple that may be used to obtain the data and metadata for
the pre-existing index entry overwritten by the insert
operation (optional).null
otherwise.public Tuple remove(byte[] key, Tuple tuple)
AbstractNode
Note: It is an error to call this method if delete markers are in use.
remove
in class Node
key
- The search key.tuple
- A tuple that may be used to obtain the data and metadata for
the pre-existing index entry that was either removed by the
remove operation (optional).null
otherwise.Copyright © 2006–2019 SYSTAP, LLC DBA Blazegraph. All rights reserved.