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

## Class PagePartitionMetaIO

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

Direct Known Subclasses:
  PagePartitionMetaIOV2

    public class PagePartitionMetaIO
    extends PageMetaIO

IO for partition metadata pages.

### Field Summary

Fields
`static IOVersions<PagePartitionMetaIO>` `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_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_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
Constructor and Description
`PagePartitionMetaIO(int ver)`

### Method Summary

All Methods Instance Methods Concrete Methods
`long` `getCountersPageId(long pageAddr)` Returns partition counters page identifier, page with caches in cache group sizes.
`long` `getGapsLink(long pageAddr)`
`long` `getGlobalRemoveId(long pageAddr)`
`long` `getPartitionMetaStoreReuseListRoot(long pageAddr)`
`byte` `getPartitionState(long pageAddr)`
`long` `getPendingTreeRoot(long pageAddr)` Returns partition pending tree root.
`long` `getSize(long pageAddr)`
`long` `getUpdateCounter(long pageAddr)`
`void` `initNewPage(long pageAddr, long pageId, int pageSize)`
`protected void` `printPage(long pageAddr, int pageSize, GridStringBuilder sb)`
`void` `setCountersPageId(long pageAddr, long cntrsPageId)` Sets new reference to partition counters page (logical cache sizes).
`boolean` `setGapsLink(long pageAddr, long link)`
`boolean` `setGlobalRemoveId(long pageAddr, long rmvId)`
`void` `setPartitionMetaStoreReuseListRoot(long pageAddr, long listRoot)`
`boolean` `setPartitionState(long pageAddr, byte state)`
`void` `setPendingTreeRoot(long pageAddr, long treeRoot)` Sets new partition pending tree root.
`boolean` `setSize(long pageAddr, long size)`
`boolean` `setUpdateCounter(long pageAddr, long cntr)`

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

`getCandidatePageCount, getLastAllocatedPageCount, getLastAllocatedPageCount, getLastSuccessfulFullSnapshotId, getLastSuccessfulSnapshotId, getLastSuccessfulSnapshotTag, getNextSnapshotTag, getReuseListRoot, getTreeRoot, setCandidatePageCount, setLastAllocatedPageCount, setLastSuccessfulFullSnapshotId, setLastSuccessfulSnapshotId, setLastSuccessfulSnapshotTag, setNextSnapshotTag, setReuseListRoot, setTreeRoot`

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

`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, 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`

### Field Detail

#### VERSIONS

    public static final IOVersions<PagePartitionMetaIO> VERSIONS

### Constructor Detail

#### PagePartitionMetaIO

    public PagePartitionMetaIO(int ver)

Parameters:
  `ver` - Version.

### Method Detail

#### initNewPage

    public void initNewPage(long pageAddr,
                            long pageId,
                            int pageSize)

Overrides:
  `initNewPage` in class `PageMetaIO`
Parameters:
  `pageAddr` - Page address.
  `pageId` - Page ID.
  `pageSize` - Page size.
See Also:
  `EncryptionSpi.encryptedSize(int)`

#### getSize

    public long getSize(long pageAddr)

Parameters:
  `pageAddr` - Page address.
Returns:
  Partition size.

#### setSize

    public boolean setSize(long pageAddr,
                           long size)

Parameters:
  `pageAddr` - Page address.
  `size` - Partition size.
Returns:
  `true` if value has changed as a result of this method's invocation.

#### getUpdateCounter

    public long getUpdateCounter(long pageAddr)

Parameters:
  `pageAddr` - Page address.
Returns:
  Partition update counter.

#### setUpdateCounter

    public boolean setUpdateCounter(long pageAddr,
                                    long cntr)

Parameters:
  `pageAddr` - Page address.
  `cntr` - Partition update counter.
Returns:
  `true` if value has changed as a result of this method's invocation.

#### getGlobalRemoveId

    public long getGlobalRemoveId(long pageAddr)

Parameters:
  `pageAddr` - Page address.
Returns:
  Global remove ID.

#### setGlobalRemoveId

    public boolean setGlobalRemoveId(long pageAddr,
                                     long rmvId)

Parameters:
  `pageAddr` - Page address.
  `rmvId` - Global remove ID.
Returns:
  `true` if value has changed as a result of this method's invocation.

#### getPartitionState

    public byte getPartitionState(long pageAddr)

Parameters:
  `pageAddr` - Page address.

#### setPartitionState

    public boolean setPartitionState(long pageAddr,
                                     byte state)

Parameters:
  `pageAddr` - Partition metadata page address.
  `state` - State.
Returns:
  `true` if value has changed as a result of this method's invocation.

#### getCountersPageId

    public long getCountersPageId(long pageAddr)

Returns partition counters page identifier, page with caches in cache group sizes.

Parameters:
  `pageAddr` - Partition metadata page address.
Returns:
  Next meta partial page ID or `0` if it does not exist.

#### setCountersPageId

    public void setCountersPageId(long pageAddr,
                                  long cntrsPageId)

Sets new reference to partition counters page (logical cache sizes).

Parameters:
  `pageAddr` - Partition metadata page address.
  `cntrsPageId` - New cache sizes page ID.

#### getPendingTreeRoot

    public long getPendingTreeRoot(long pageAddr)

Returns partition pending tree root. Pending tree is used to tracking expiring entries.

Parameters:
  `pageAddr` - Page address.
Returns:
  Pending Tree root page.

#### setPendingTreeRoot

    public void setPendingTreeRoot(long pageAddr,
                                   long treeRoot)

Sets new partition pending tree root.

Parameters:
  `pageAddr` - Page address.
  `treeRoot` - Pending Tree root

#### getPartitionMetaStoreReuseListRoot

    public long getPartitionMetaStoreReuseListRoot(long pageAddr)

Parameters:
  `pageAddr` - Page address.

#### setPartitionMetaStoreReuseListRoot

    public void setPartitionMetaStoreReuseListRoot(long pageAddr,
                                                   long listRoot)

Parameters:
  `pageAddr` - Page address.
  `listRoot` - List root.

#### getGapsLink

    public long getGapsLink(long pageAddr)

Parameters:
  `pageAddr` - Page address.

#### setGapsLink

    public boolean setGapsLink(long pageAddr,
                               long link)

Parameters:
  `pageAddr` - Page address.
  `link` - Link.
Returns:
  `true` if value has changed as a result of this method's invocation.

#### printPage

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

Overrides:
  `printPage` in class `PageMetaIO`
Parameters:
  `pageAddr` - Address.
  `pageSize` - Page size.
  `sb` - Sb.
Throws:
  `IgniteCheckedException`

${current.year} Copyright © Apache Software Foundation

Follow @ApacheIgnite

Ignite Database and Caching Platform | : ver. 2.9.1
Release Date | : December 9 2020