Class BPlusLeafIO<L>
java.lang.Object
org.apache.ignite.internal.persistence.tree.io.PageIO
org.apache.ignite.internal.persistence.tree.io.BPlusIO<L>
org.apache.ignite.internal.persistence.tree.io.BPlusLeafIO<L>
- All Implemented Interfaces:
CompactablePageIO
- Direct Known Subclasses:
IndexRowLeafIO,LongDataLeafIO,ObjectDataLeafIO
Abstract IO routines for B+Tree leaf pages.
-
Field Summary
Fields inherited from class org.apache.ignite.internal.persistence.tree.io.BPlusIO
ITEMS_OFF, itemSizeFields inherited from class org.apache.ignite.internal.persistence.tree.io.PageIO
COMMON_HEADER_END, CRC_OFF, MAX_PAYLOAD_SIZE, PAGE_ID_OFF, ROTATED_ID_PART_OFF, T_BM_BINARY_DATA, T_BM_BINARY_LONG_INDEX_INNER, T_BM_BINARY_LONG_INDEX_LEAF, T_BM_CONTAINED_OBJECT_INDEX_INNER, T_BM_CONTAINED_OBJECT_INDEX_LEAF, T_BM_INT_INT_INDEX_INNER, T_BM_INT_INT_INDEX_LEAF, T_BM_LONG_DATA, T_BM_LONG_DATA_REF_INNER, T_BM_LONG_DATA_REF_LEAF, T_BM_OBJECT_DATA, T_BM_OBJECT_DATA_REF_INNER, T_BM_OBJECT_DATA_REF_LEAF, 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_CACHE_ID_DATA_REF_MVCC_INNER, T_CACHE_ID_DATA_REF_MVCC_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_DATA_REF_MVCC_INNER, T_DATA_REF_MVCC_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_EX_REF_MVCC_INNER_END, T_H2_EX_REF_MVCC_INNER_START, T_H2_EX_REF_MVCC_LEAF_END, T_H2_EX_REF_MVCC_LEAF_START, T_H2_MVCC_REF_INNER, T_H2_MVCC_REF_LEAF, 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, T_TX_LOG_INNER, T_TX_LOG_LEAF, TYPE_OFF, VER_OFF -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfinal voidcopyItems(long srcPageAddr, long dstPageAddr, int srcIdx, int dstIdx, int cnt, boolean cpLeft) Copy items from source page to destination page.intgetMaxCount(long pageAddr, int pageSize) final intoffset(int idx) Methods inherited from class org.apache.ignite.internal.persistence.tree.io.BPlusIO
canGetRow, compactPage, getCount, getForward, getItemsEnd, getItemSize, getLookupRow, getRemoveId, initNewPage, insert, isLeaf, merge, printPage, remove, restorePage, setCount, setForward, setRemoveId, splitExistingPage, splitForwardPage, store, store, storeByOffset, visitMethods inherited from class org.apache.ignite.internal.persistence.tree.io.PageIO
copyPage, 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, printPage, registerH2, registerH2ExtraInner, registerH2ExtraLeaf, registerTest, registerTest, setCompactedSize, setCompressedSize, setCompressionType, setCrc, setCrc, setPageId, setRotatedIdPart, setType, setVersion, toString
-
Constructor Details
-
BPlusLeafIO
protected BPlusLeafIO(int type, int ver, int itemSize) - Parameters:
type- Page type.ver- Page format version.itemSize- Single item size on page.
-
-
Method Details
-
getMaxCount
public int getMaxCount(long pageAddr, int pageSize) - Specified by:
getMaxCountin classBPlusIO<L>- Parameters:
pageAddr- Page address.pageSize- Page size without encryption overhead.- Returns:
- Max items count.
-
copyItems
public final void copyItems(long srcPageAddr, long dstPageAddr, int srcIdx, int dstIdx, int cnt, boolean cpLeft) throws IgniteCheckedException Copy items from source page to destination page. Both pages must be of the same type and the same version.- Specified by:
copyItemsin classBPlusIO<L>- Parameters:
srcPageAddr- Source page address.dstPageAddr- Destination page address.srcIdx- Source begin index.dstIdx- Destination begin index.cnt- Items count.cpLeft- Copy leftmost link (makes sense only for inner pages).- Throws:
IgniteCheckedException- If failed.
-
offset
public final int offset(int idx)
-