Class AbstractDataInnerIO
- java.lang.Object
-
- org.apache.ignite.internal.processors.cache.persistence.tree.io.PageIO
-
- org.apache.ignite.internal.processors.cache.persistence.tree.io.BPlusIO<L>
-
- org.apache.ignite.internal.processors.cache.persistence.tree.io.BPlusInnerIO<CacheSearchRow>
-
- org.apache.ignite.internal.processors.cache.tree.AbstractDataInnerIO
-
- All Implemented Interfaces:
CompactablePageIO,RowLinkIO
- Direct Known Subclasses:
CacheIdAwareDataInnerIO,DataInnerIO
public abstract class AbstractDataInnerIO extends BPlusInnerIO<CacheSearchRow> implements RowLinkIO
-
-
Field Summary
-
Fields inherited from class org.apache.ignite.internal.processors.cache.persistence.tree.io.BPlusIO
ITEMS_OFF, itemSize
-
Fields inherited from class org.apache.ignite.internal.processors.cache.persistence.tree.io.PageIO
COMMON_HEADER_END, CRC_OFF, MAX_PAYLOAD_SIZE, PAGE_ID_OFF, ROTATED_ID_PART_OFF, T_BPLUS_META, T_CACHE_ID_AWARE_DATA_REF_INNER, T_CACHE_ID_AWARE_DATA_REF_LEAF, T_CACHE_ID_AWARE_PENDING_REF_INNER, T_CACHE_ID_AWARE_PENDING_REF_LEAF, T_DATA, T_DATA_METASTORAGE, T_DATA_PART, T_DATA_REF_INNER, T_DATA_REF_LEAF, T_DATA_REF_METASTORAGE_INNER, T_DATA_REF_METASTORAGE_LEAF, T_DEFRAG_LINK_MAPPING_INNER, T_DEFRAG_LINK_MAPPING_LEAF, T_H2_EX_REF_INNER_END, T_H2_EX_REF_INNER_START, T_H2_EX_REF_LEAF_END, T_H2_EX_REF_LEAF_START, T_H2_REF_INNER, T_H2_REF_LEAF, T_MARKER_PAGE, T_META, T_METASTORE_INNER, T_METASTORE_LEAF, T_PAGE_LIST_META, T_PAGE_LIST_NODE, T_PAGE_UPDATE_TRACKING, T_PART_CNTRS, T_PART_META, T_PENDING_REF_INNER, T_PENDING_REF_LEAF, TYPE_OFF, VER_OFF
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedAbstractDataInnerIO(int type, int ver, boolean canGetRow, int itemSize)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description intgetHash(long pageAddr, int idx)longgetLink(long pageAddr, int idx)CacheSearchRowgetLookupRow(BPlusTree<CacheSearchRow,?> tree, long pageAddr, int idx)Get lookup row.voidstore(long dstPageAddr, int dstIdx, BPlusIO<CacheSearchRow> srcIo, long srcPageAddr, int srcIdx)Store row info from the given source.voidstoreByOffset(long pageAddr, int off, CacheSearchRow row)Store the needed info about the row in the page.protected booleanstoreCacheId()voidvisit(long pageAddr, IgniteInClosure<CacheSearchRow> c)-
Methods inherited from class org.apache.ignite.internal.processors.cache.persistence.tree.io.BPlusInnerIO
copyItems, getLeft, getMaxCount, getRight, initNewRoot, insert, offset, setLeft
-
Methods inherited from class org.apache.ignite.internal.processors.cache.persistence.tree.io.BPlusIO
canGetRow, compactPage, getCount, getForward, getFreeSpace, getItemsEnd, getItemSize, getRemoveId, initNewPage, isLeaf, merge, printPage, remove, restorePage, setCount, setForward, setRemoveId, splitExistingPage, splitForwardPage, store
-
Methods inherited from class org.apache.ignite.internal.processors.cache.persistence.tree.io.PageIO
assertPageType, assertPageType, copyPage, deriveIndexPageType, getBPlusIO, getBPlusIO, getCompactedSize, getCompactedSize, getCompressedSize, getCompressedSize, getCompressionType, getCompressionType, getCrc, getCrc, getInnerVersions, getLeafVersions, getPageId, getPageId, getPageIO, getPageIO, getPageIO, getRotatedIdPart, getType, getType, getType, getVersion, getVersion, getVersion, isDataPageType, isIndexPage, printPage, registerH2, registerH2ExtraInner, registerH2ExtraLeaf, registerTest, registerTest, setCompactedSize, setCompressedSize, setCompressionType, setCrc, setCrc, setPageId, setRotatedIdPart, setType, setVersion, toString
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.ignite.internal.processors.cache.tree.RowLinkIO
getCacheId
-
-
-
-
Method Detail
-
storeByOffset
public final void storeByOffset(long pageAddr, int off, CacheSearchRow row)Store the needed info about the row in the page. Leaf and inner pages can store different info.- Specified by:
storeByOffsetin classBPlusIO<CacheSearchRow>- Parameters:
pageAddr- Page address.off- Offset in bytes.row- Lookup or full row.
-
getLookupRow
public final CacheSearchRow getLookupRow(BPlusTree<CacheSearchRow,?> tree, long pageAddr, int idx) throws IgniteCheckedException
Get lookup row.- Specified by:
getLookupRowin classBPlusIO<CacheSearchRow>- Parameters:
tree- Tree.pageAddr- Page address.idx- Index.- Returns:
- Lookup row.
- Throws:
IgniteCheckedException- If failed.
-
store
public final void store(long dstPageAddr, int dstIdx, BPlusIO<CacheSearchRow> srcIo, long srcPageAddr, int srcIdx)Store row info from the given source.- Specified by:
storein classBPlusIO<CacheSearchRow>- Parameters:
dstPageAddr- Destination page address.dstIdx- Destination index.srcIo- Source IO.srcPageAddr- Source page address.srcIdx- Source index.
-
getLink
public final long getLink(long pageAddr, int idx)
-
getHash
public final int getHash(long pageAddr, int idx)
-
visit
public void visit(long pageAddr, IgniteInClosure<CacheSearchRow> c)- Overrides:
visitin classBPlusIO<CacheSearchRow>- Parameters:
pageAddr- Page address.c- Closure.
-
storeCacheId
protected boolean storeCacheId()
- Returns:
Trueif cache ID has to be stored.
-
-