Class PendingEntriesTree
- java.lang.Object
-
- org.apache.ignite.internal.processors.cache.persistence.DataStructure
-
- org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree<PendingRow,PendingRow>
-
- org.apache.ignite.internal.processors.cache.tree.PendingEntriesTree
-
- All Implemented Interfaces:
IgniteTree<PendingRow,PendingRow>
public class PendingEntriesTree extends BPlusTree<PendingRow,PendingRow>
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree
BPlusTree.Get, BPlusTree.Insert, BPlusTree.Invoke, BPlusTree.Put, BPlusTree.Remove, BPlusTree.RemoveRange, BPlusTree.Replace, BPlusTree.Result, BPlusTree.Search, BPlusTree.TreeRowClosure<L,T extends L>, BPlusTree.TreeRowFactory<L,T extends L>
-
Nested classes/interfaces inherited from interface org.apache.ignite.internal.util.IgniteTree
IgniteTree.InvokeClosure<T>, IgniteTree.OperationType
-
-
Field Summary
Fields Modifier and Type Field Description static ObjectWITHOUT_KEY-
Fields inherited from class org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree
CONC_DESTROY_MSG, IGNITE_BPLUS_TREE_LOCK_RETRIES_DEFAULT, metaPageId, suspendFailureDiagnostic, testHndWrapper
-
Fields inherited from class org.apache.ignite.internal.processors.cache.persistence.DataStructure
grpId, grpName, metrics, pageFlag, pageIoRslvr, pageMem, reuseList, rnd, wal
-
-
Constructor Summary
Constructors Constructor Description PendingEntriesTree(CacheGroupContext grp, String name, PageMemory pageMem, long metaPageId, ReuseList reuseList, boolean initNew, PageLockTrackerManager pageLockTrackerManager, byte pageFlag)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected intcompare(BPlusIO<PendingRow> iox, long pageAddr, int idx, PendingRow row)PendingRowgetRow(BPlusIO<PendingRow> io, long pageAddr, int idx, Object flag)Get data row.booleanremovex(PendingRow lower, PendingRow upper, int limit)-
Methods inherited from class org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree
acquirePage, checkDestroyed, compare, corruptedTreeException, destroy, destroy, destroyDownPages, destroyed, enableSequentialWriteMode, find, find, find, find, findFirst, findFirst, findLast, findLast, findOne, findOne, findOne, getFirstPageIds, getLockRetries, getMetaPageId, getRow, initTree, initTree, interruptAll, invoke, isEmpty, latestInnerIO, latestLeafIO, lockRetryErrorMessage, markDestroyed, maxLockHoldTime, printTree, processFailure, put, putx, read, read, remove, remove, removex, removex, rootLevel, setIos, size, size, statisticsHolder, temporaryReleaseLock, toString, treeName, validateTree
-
Methods inherited from class org.apache.ignite.internal.processors.cache.persistence.DataStructure
acquirePage, allocatePage, allocatePage, allocatePageNoReuse, close, groupId, init, name, needWalDeltaRecord, pageSize, randomInt, read, read, readLock, readUnlock, recyclePage, releasePage, tryWriteLock, write, write, write, write, writeLock, writeUnlock, writeUnlock
-
-
-
-
Field Detail
-
WITHOUT_KEY
public static final Object WITHOUT_KEY
-
-
Constructor Detail
-
PendingEntriesTree
public PendingEntriesTree(CacheGroupContext grp, String name, PageMemory pageMem, long metaPageId, ReuseList reuseList, boolean initNew, PageLockTrackerManager pageLockTrackerManager, byte pageFlag) throws IgniteCheckedException
- Parameters:
grp- Cache group.name- Tree name.pageMem- Page memory.metaPageId- Meta page ID.reuseList- Reuse list.initNew- Initialize new index.pageLockTrackerManager- Page lock tracker manager.pageFlag- Default flag value for allocated pages.- Throws:
IgniteCheckedException- If failed.
-
-
Method Detail
-
compare
protected int compare(BPlusIO<PendingRow> iox, long pageAddr, int idx, PendingRow row)
- Specified by:
comparein classBPlusTree<PendingRow,PendingRow>- Parameters:
iox- IO.pageAddr- Page address.idx- Index of row in the given buffer.row- Lookup row.- Returns:
- Comparison result as in
Comparator.compare(Object, Object).
-
removex
public boolean removex(PendingRow lower, PendingRow upper, int limit) throws IgniteCheckedException
- Parameters:
lower- Lower bound (inclusive).upper- Upper bound (inclusive).limit- Limit of processed entries by single call,0or negative value for no limit.- Returns:
Trueif removed at least one row.- Throws:
IgniteCheckedException- If failed.
-
getRow
public PendingRow getRow(BPlusIO<PendingRow> io, long pageAddr, int idx, Object flag) throws IgniteCheckedException
Get data row. Can be called on inner page only ifBPlusTree.canGetRowFromInneristrue.- Specified by:
getRowin classBPlusTree<PendingRow,PendingRow>- Parameters:
io- IO.pageAddr- Page address.idx- Index.flag- Implementation specific argument,nullalways means that we need to return full detached data row.- Returns:
- Data row.
- Throws:
IgniteCheckedException- If failed.
-
-