Class MetastorageInnerIO
- 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<MetastorageRow>
-
- org.apache.ignite.internal.processors.cache.persistence.metastorage.MetastorageInnerIO
-
- All Implemented Interfaces:
MetastorageBPlusIO,CompactablePageIO
public class MetastorageInnerIO extends BPlusInnerIO<MetastorageRow> implements MetastorageBPlusIO
-
-
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
-
Fields inherited from interface org.apache.ignite.internal.processors.cache.persistence.metastorage.MetastorageBPlusIO
INNER_IO_VERSIONS, LEAF_IO_VERSIONS
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description MetastorageDataRowgetDataRow(long pageAddr, int idx, MetastorageRowStore rowStore)StringgetKey(long pageAddr, int idx, MetastorageRowStore rowStore)shortgetKeySize(long pageAddr, int idx)longgetLink(long pageAddr, int idx)MetastorageRowgetLookupRow(BPlusTree<MetastorageRow,?> tree, long pageAddr, int idx)Get lookup row.voidstore(long dstPageAddr, int dstIdx, BPlusIO<MetastorageRow> srcIo, long srcPageAddr, int srcIdx)Store row info from the given source.voidstoreByOffset(long pageAddr, int off, MetastorageRow row)Store the needed info about the row in the page.-
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, visit
-
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
-
-
-
-
Method Detail
-
storeByOffset
public void storeByOffset(long pageAddr, int off, MetastorageRow row)Store the needed info about the row in the page. Leaf and inner pages can store different info.- Specified by:
storeByOffsetin classBPlusIO<MetastorageRow>- Parameters:
pageAddr- Page address.off- Offset in bytes.row- Lookup or full row.
-
store
public void store(long dstPageAddr, int dstIdx, BPlusIO<MetastorageRow> srcIo, long srcPageAddr, int srcIdx)Store row info from the given source.- Specified by:
storein classBPlusIO<MetastorageRow>- Parameters:
dstPageAddr- Destination page address.dstIdx- Destination index.srcIo- Source IO.srcPageAddr- Source page address.srcIdx- Source index.
-
getLookupRow
public MetastorageRow getLookupRow(BPlusTree<MetastorageRow,?> tree, long pageAddr, int idx) throws IgniteCheckedException
Get lookup row.- Specified by:
getLookupRowin classBPlusIO<MetastorageRow>- Parameters:
tree- Tree.pageAddr- Page address.idx- Index.- Returns:
- Lookup row.
- Throws:
IgniteCheckedException- If failed.
-
getLink
public long getLink(long pageAddr, int idx)- Specified by:
getLinkin interfaceMetastorageBPlusIO- Parameters:
pageAddr- Page address.idx- Index.- Returns:
- Row link.
-
getKeySize
public short getKeySize(long pageAddr, int idx)- Specified by:
getKeySizein interfaceMetastorageBPlusIO- Parameters:
pageAddr- Page address.idx- Index.- Returns:
- Key size in bytes.
-
getKey
public String getKey(long pageAddr, int idx, MetastorageRowStore rowStore) throws IgniteCheckedException
- Specified by:
getKeyin interfaceMetastorageBPlusIO- Parameters:
pageAddr- Page address.idx- Index.- Returns:
- Key.
- Throws:
IgniteCheckedException
-
getDataRow
public MetastorageDataRow getDataRow(long pageAddr, int idx, MetastorageRowStore rowStore) throws IgniteCheckedException
- Specified by:
getDataRowin interfaceMetastorageBPlusIO- Parameters:
pageAddr- Page address.idx- Index.rowStore- Row store.- Returns:
- Data row.
- Throws:
IgniteCheckedException
-
-