org.apache.ignite.internal.processors.cache.persistence.tree.io

## Class BPlusMetaIO

- java.lang.Object
- - org.apache.ignite.internal.processors.cache.persistence.tree.io.PageIO
  - - org.apache.ignite.internal.processors.cache.persistence.tree.io.BPlusMetaIO

    public class BPlusMetaIO
    extends PageIO

IO routines for B+Tree meta pages.

### Field Summary

Fields
`static IOVersions<BPlusMetaIO>` `VERSIONS`

### 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_CACHE_ID_DATA_REF_MVCC_INNER, T_CACHE_ID_DATA_REF_MVCC_LEAF, T_DATA, T_DATA_METASTORAGE, 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_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`

### Method Summary

All Methods Instance Methods Concrete Methods
`void` `addRoot(long pageAddr, long rootPageId, int pageSize)`
`void` `cutRoot(long pageAddr, int pageSize)`
`long` `getFirstPageId(long pageAddr, int lvl)`
`int` `getInlineSize(long pageAddr)`
`int` `getLevelsCount(long pageAddr)`
`int` `getRootLevel(long pageAddr)`
`void` `initRoot(long pageAdrr, long rootId, int pageSize)`
`protected void` `printPage(long addr, int pageSize, GridStringBuilder sb)`
`void` `setInlineSize(long pageAddr, int size)`

### Methods inherited from class org.apache.ignite.internal.processors.cache.persistence.tree.io.PageIO

`getBPlusIO, getBPlusIO, getCrc, getCrc, getInnerVersions, getLeafVersions, getPageId, getPageId, getPageIO, getPageIO, getRotatedIdPart, getType, getType, getType, getVersion, getVersion, getVersion, initNewPage, isDataPageType, printPage, registerH2, registerH2ExtraInner, registerH2ExtraLeaf, registerTest, setCrc, setCrc, setPageId, setRotatedIdPart, setType, setVersion, toString`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Field Detail

#### VERSIONS

    public static final IOVersions<BPlusMetaIO> VERSIONS

### Method Detail

#### initRoot

    public void initRoot(long pageAdrr,
                         long rootId,
                         int pageSize)

Parameters:
  `pageAdrr` - Page address.
  `rootId` - Root page ID.
  `pageSize` - Page size.

#### getLevelsCount

    public int getLevelsCount(long pageAddr)

Parameters:
  `pageAddr` - Page address.
Returns:
  Number of levels in this tree.

#### getFirstPageId

    public long getFirstPageId(long pageAddr,
                               int lvl)

Parameters:
  `pageAddr` - Page address.
  `lvl` - Level.
Returns:
  First page ID at that level.

#### getRootLevel

    public int getRootLevel(long pageAddr)

Parameters:
  `pageAddr` - Page address.
Returns:
  Root level.

#### addRoot

    public void addRoot(long pageAddr,
                        long rootPageId,
                        int pageSize)

Parameters:
  `pageAddr` - Page address.
  `rootPageId` - New root page ID.
  `pageSize` - Page size.

#### cutRoot

    public void cutRoot(long pageAddr,
                        int pageSize)

Parameters:
  `pageAddr` - Page address.
  `pageSize` - Page size.

#### setInlineSize

    public void setInlineSize(long pageAddr,
                              int size)

Parameters:
  `pageAddr` - Page address.
  `size` - Offset size.

#### getInlineSize

    public int getInlineSize(long pageAddr)

Parameters:
  `pageAddr` - Page address.

#### printPage

    protected void printPage(long addr,
                             int pageSize,
                             GridStringBuilder sb)
                      throws IgniteCheckedException

Specified by:
  `printPage` in class `PageIO`
Parameters:
  `addr` - Address.
  `pageSize` - Page size.
  `sb` - Sb.
Throws:
  `IgniteCheckedException`

${current.year} Copyright © Apache Software Foundation

Follow @ApacheIgnite

Ignite Database and Caching Platform | : ver. 2.7.6
Release Date | : September 11 2019