Class AbstractDataLeafIO
- 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.BPlusLeafIO<CacheSearchRow>
-
- org.apache.ignite.internal.processors.cache.tree.AbstractDataLeafIO
-
- All Implemented Interfaces:
CompactablePageIO,RowLinkIO
- Direct Known Subclasses:
CacheIdAwareDataLeafIO,DataLeafIO
public abstract class AbstractDataLeafIO extends BPlusLeafIO<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 Constructor Description AbstractDataLeafIO(int type, int ver, 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.booleanstoreCacheId()voidvisit(long pageAddr, IgniteInClosure<CacheSearchRow> c)-
Methods inherited from class org.apache.ignite.internal.processors.cache.persistence.tree.io.BPlusLeafIO
copyItems, getMaxCount, offset
-
Methods inherited from class org.apache.ignite.internal.processors.cache.persistence.tree.io.BPlusIO
canGetRow, compactPage, getCount, getForward, getFreeSpace, getItemsEnd, getItemSize, getRemoveId, initNewPage, insert, 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 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.
-
store
public 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.
-
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.
-
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
public boolean storeCacheId()
- Returns:
Trueif cache ID has to be stored.
-
-