public class CommitTimeIndex extends BTree
Modifier and Type | Class and Description |
---|---|
protected static class |
CommitTimeIndex.TupleSerializer
Encapsulates key and value formation.
|
BTree.Counter, BTree.LeafCursor, BTree.NodeFactory, BTree.PartitionedCounter, BTree.Stack
AbstractBTree.IBTreeCounters
counter, height, nentries, nleaves, nnodes, recordVersion
branchingFactor, debug, DEBUG, dumpLog, error, ERROR_CLOSED, ERROR_ERROR_STATE, ERROR_LESS_THAN_ZERO, ERROR_READ_ONLY, ERROR_TOO_LARGE, ERROR_TRANSIENT, INFO, log, metadata, ndistinctOnWriteRetentionQueue, nodeSer, readOnly, root, store, storeCache, writeRetentionQueue
Constructor and Description |
---|
CommitTimeIndex(IRawStore store,
Checkpoint checkpoint,
IndexMetadata metadata,
boolean readOnly)
Load from the store.
|
Modifier and Type | Method and Description |
---|---|
void |
add(long commitTime)
Add an entry for the commitTime.
|
static CommitTimeIndex |
createTransient()
Create a transient instance.
|
protected long |
decodeKey(byte[] key) |
protected byte[] |
encodeKey(long commitTime)
Encodes the commit time into a key.
|
long |
find(long timestamp)
Return the largest commitTime that is less than or equal to the given
timestamp.
|
long |
findIndexOf(long timestamp)
Find the index having the largest timestamp that is less than or
equal to the given timestamp.
|
long |
findNext(long timestamp)
Find the first commit time strictly greater than the timestamp.
|
_reopen, asReadOnly, create, createTransient, createViewCheckpoint, fireDirtyEvent, getBloomFilter, getCheckpoint, getCounter, getDirtyListener, getEntryCount, getHeight, getLastCommitTime, getLeafCount, getMetadataAddr, getMutableBTree, getNodeCount, getRecordVersion, getRevisionTimestamp, getRootAddr, getSourceCount, getSources, getStore, handleCommit, invalidate, load, needsCheckpoint, newLeafCursor, newLeafCursor, readBloomFilter, removeAll, setDirtyListener, setIndexMetadata, setLastCommitTime, writeCheckpoint, writeCheckpoint2
assertNotReadOnly, assertNotTransient, close, contains, contains, decodeRecordAddr, dump, dump, dumpPages, encodeRecordAddr, getBranchingFactor, getBtreeCounters, getContainsTuple, getCounters, getIndexMetadata, getLevel, getLevel, getLookupTuple, getNodeSerializer, getReadLockCount, getResourceMetadata, getRightMostNode, getRoot, getRootOrFinger, getStatistics, getUtilization, getWriteTuple, indexOf, insert, insert, insert, isBalanced, isOpen, isReadOnly, isTransient, keyAt, lookup, lookup, lookup, putIfAbsent, rangeCheck, rangeCopy, rangeCount, rangeCount, rangeCount, rangeCountExact, rangeCountExactWithDeleted, rangeIterator, rangeIterator, rangeIterator, rangeIterator, rangeIterator, readLock, readNodeOrLeaf, recycle, remove, remove, remove, reopen, scan, setBTreeCounters, submit, submit, submit, toString, touch, valueAt, valueAt, writeLock, writeNodeOrLeaf, writeNodeRecursive, writeNodeRecursiveCallersThread, writeNodeRecursiveConcurrent
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
close, dumpPages, getIndexMetadata, isOpen, reopen
getCounters
rangeCount, scan
getReadLockCount, isReadOnly, readLock, writeLock
public CommitTimeIndex(IRawStore store, Checkpoint checkpoint, IndexMetadata metadata, boolean readOnly)
store
- The backing store.checkpoint
- The Checkpoint
record.metadata
- The metadata record for the index.public static CommitTimeIndex createTransient()
protected byte[] encodeKey(long commitTime)
commitTime
- The commit time.protected long decodeKey(byte[] key)
public long find(long timestamp)
timestamp
- The given timestamp.-1L
iff there is no entry
in the index which satisifies the probe.IllegalArgumentException
- if timestamp is less than or equals to ZERO (0L).public long findNext(long timestamp)
timestamp
- The timestamp. A value of ZERO (0) may be used to find the
first commit time.-1L
if there is no commit
record whose timestamp is strictly greater than timestamp.public long findIndexOf(long timestamp)
-1
iff there
are no index entries.public void add(long commitTime)
commitTime
- A timestamp representing a commit time.IllegalArgumentException
- if commitTime is 0L
.Copyright © 2006–2019 SYSTAP, LLC DBA Blazegraph. All rights reserved.