public class BPlusMetaIO extends PageIO
| Modifier and Type | Field and Description |
|---|---|
static long |
DEFAULT_FLAGS |
static IOVersions<BPlusMetaIO> |
VERSIONS |
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_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_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_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| Modifier and Type | Method and Description |
|---|---|
void |
addRoot(long pageAddr,
long rootPageId,
int pageSize) |
IgniteProductVersion |
createdVersion(long pageAddr) |
void |
cutRoot(long pageAddr,
int pageSize) |
long |
getFirstPageId(long pageAddr,
int lvl) |
int |
getFreeSpace(int pageSize,
long pageAddr)
Count of bytes that is currently free in this page and possibly can be used to place additional payload.
|
int |
getInlineSize(long pageAddr) |
int |
getLevelsCount(long pageAddr) |
int |
getMaxLevels(long pageAddr,
int pageSize) |
int |
getRootLevel(long pageAddr) |
void |
initFlagsAndVersion(long pageAddr,
long flags,
IgniteProductVersion createdVer) |
void |
initRoot(long pageAdrr,
long rootId,
int pageSize) |
boolean |
inlineObjectHash(long pageAddr)
Whether Java objects should be inlined as hash or as bytes array.
|
boolean |
inlineObjectSupported(long pageAddr) |
protected void |
printPage(long addr,
int pageSize,
GridStringBuilder sb) |
void |
setCreatedVersion(long pageAddr,
IgniteProductVersion curVer) |
void |
setFlags(long pageAddr,
boolean unwrappedPk,
boolean inlineObjSupported,
boolean inlineObjHash) |
void |
setInlineSize(long pageAddr,
int size) |
static void |
setValues(long pageAddr,
int inlineSize,
boolean unwrappedPk,
boolean inlineObjSupported,
boolean inlineObjHash)
Set meta page values.
|
boolean |
supportFlags() |
boolean |
unwrappedPk(long pageAddr) |
static void |
upgradePageVersion(long pageAddr,
boolean inlineObjSupported,
boolean unwrappedPk,
int pageSize) |
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, initNewPage, isDataPageType, isIndexPage, printPage, registerH2, registerH2ExtraInner, registerH2ExtraLeaf, registerTest, registerTest, setCompactedSize, setCompressedSize, setCompressionType, setCrc, setCrc, setPageId, setRotatedIdPart, setType, setVersion, toStringpublic static final IOVersions<BPlusMetaIO> VERSIONS
public static final long DEFAULT_FLAGS
public void initRoot(long pageAdrr,
long rootId,
int pageSize)
pageAdrr - Page address.rootId - Root page ID.pageSize - Page size.public int getLevelsCount(long pageAddr)
pageAddr - Page address.public int getMaxLevels(long pageAddr,
int pageSize)
pageAddr - Page address.pageSize - Page size.public long getFirstPageId(long pageAddr,
int lvl)
pageAddr - Page address.lvl - Level.public int getRootLevel(long pageAddr)
pageAddr - Page address.public void addRoot(long pageAddr,
long rootPageId,
int pageSize)
pageAddr - Page address.rootPageId - New root page ID.pageSize - Page size.public void cutRoot(long pageAddr,
int pageSize)
pageAddr - Page address.pageSize - Page size.public void setInlineSize(long pageAddr,
int size)
pageAddr - Page address.size - Offset size.public int getInlineSize(long pageAddr)
pageAddr - Page address.public boolean unwrappedPk(long pageAddr)
true In case use unwrapped PK.public boolean inlineObjectSupported(long pageAddr)
pageAddr - Page address.true In case inline object is supported by the tree.public boolean inlineObjectHash(long pageAddr)
pageAddr - Page address.public boolean supportFlags()
true If flags are supported.public void initFlagsAndVersion(long pageAddr,
long flags,
IgniteProductVersion createdVer)
pageAddr - Page address.flags - Flags.createdVer - The version of the product that creates the page (b+tree).public void setCreatedVersion(long pageAddr,
IgniteProductVersion curVer)
pageAddr - Page address.curVer - Ignite current version.public IgniteProductVersion createdVersion(long pageAddr)
pageAddr - Page address.public void setFlags(long pageAddr,
boolean unwrappedPk,
boolean inlineObjSupported,
boolean inlineObjHash)
pageAddr - Page address.unwrappedPk - unwrapped primary key of this tree flag.inlineObjSupported - inline POJO by created tree flag.inlineObjHash - Whether Java objects should be inlined as hash or as bytes array.protected void printPage(long addr,
int pageSize,
GridStringBuilder sb)
throws IgniteCheckedException
printPage in class PageIOaddr - Address.pageSize - Page size.sb - Sb.IgniteCheckedExceptionpublic int getFreeSpace(int pageSize,
long pageAddr)
getFreeSpace in class PageIOpageSize - Page size.pageAddr - Page address.public static void upgradePageVersion(long pageAddr,
boolean inlineObjSupported,
boolean unwrappedPk,
int pageSize)
pageAddr - Page address.inlineObjSupported - Supports inline object flag.unwrappedPk - Unwrap PK flag.pageSize - Page size.public static void setValues(long pageAddr,
int inlineSize,
boolean unwrappedPk,
boolean inlineObjSupported,
boolean inlineObjHash)
pageAddr - Page address.inlineSize - Inline size.unwrappedPk - Unwrap PK flag.inlineObjSupported - Supports inline object flag.inlineObjHash - Supports inline object hash flag.
Follow @ApacheIgnite
Ignite Database and Caching Platform : ver. 2.15.0 Release Date : April 25 2023