org.apache.ignite.internal.processors.cache.mvcc.txlog

## Class TxLogLeafIO

- 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.BPlusLeafIO<TxKey>
      - - org.apache.ignite.internal.processors.cache.mvcc.txlog.TxLogLeafIO

All Implemented Interfaces:
  TxLogIO, CompactablePageIO

    public class TxLogLeafIO
    extends BPlusLeafIO<TxKey>
    implements TxLogIO

### Field Summary

Fields
`static IOVersions<TxLogLeafIO>` `VERSIONS`

### 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_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
`protected` `TxLogLeafIO(int ver)`

### Method Summary

All Methods Instance Methods Concrete Methods
`int` `compare(long pageAddr, int off, TxKey row)`
`TxKey` `getLookupRow(BPlusTree<TxKey,?> tree, long pageAddr, int idx)` Get lookup row.
`long` `getMajor(long pageAddr, int off)`
`long` `getMinor(long pageAddr, int off)`
`byte` `getState(long pageAddr, int off)`
`void` `setMajor(long pageAddr, int off, long major)`
`void` `setMinor(long pageAddr, int off, long minor)`
`void` `setState(long pageAddr, int off, byte state)`
`void` `store(long dstPageAddr, int dstIdx, BPlusIO<TxKey> srcIo, long srcPageAddr, int srcIdx)` Store row info from the given source.
`void` `storeByOffset(long pageAddr, int off, TxKey row)` Store the needed info about the row in the page.

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

`copyItems, getMaxCount, offset`

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

`canGetRow, compactPage, getCount, getForward, getItemsEnd, getItemSize, getRemoveId, initNewPage, insert, 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

`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<TxLogLeafIO> VERSIONS

### Constructor Detail

#### TxLogLeafIO

    protected TxLogLeafIO(int ver)

Parameters:
  `ver` - Page format version.

### Method Detail

#### storeByOffset

    public void storeByOffset(long pageAddr,
                              int off,
                              TxKey row)

Store the needed info about the row in the page. Leaf and inner pages can store different info.

Specified by:
  `storeByOffset` in class `BPlusIO<TxKey>`
Parameters:
  `pageAddr` - Page address.
  `off` - Offset in bytes.
  `row` - Lookup or full row.

#### store

    public void store(long dstPageAddr,
                      int dstIdx,
                      BPlusIO<TxKey> srcIo,
                      long srcPageAddr,
                      int srcIdx)

Store row info from the given source.

Specified by:
  `store` in class `BPlusIO<TxKey>`
Parameters:
  `dstPageAddr` - Destination page address.
  `dstIdx` - Destination index.
  `srcIo` - Source IO.
  `srcPageAddr` - Source page address.
  `srcIdx` - Source index.

#### getLookupRow

    public TxKey getLookupRow(BPlusTree<TxKey,?> tree,
                              long pageAddr,
                              int idx)

Get lookup row.

Specified by:
  `getLookupRow` in class `BPlusIO<TxKey>`
Parameters:
  `tree` - Tree.
  `pageAddr` - Page address.
  `idx` - Index.
Returns:
  Lookup row.

#### compare

    public int compare(long pageAddr,
                       int off,
                       TxKey row)

Specified by:
  `compare` in interface `TxLogIO`
Parameters:
  `pageAddr` - Page address.
  `off` - Item offset.
  `row` - Row to compare with.
Returns:
  Comparision result.

#### getMajor

    public long getMajor(long pageAddr,
                         int off)

Specified by:
  `getMajor` in interface `TxLogIO`
Parameters:
  `pageAddr` - Page address.
  `off` - Item offset.
Returns:
  Major version

#### setMajor

    public void setMajor(long pageAddr,
                         int off,
                         long major)

Specified by:
  `setMajor` in interface `TxLogIO`
Parameters:
  `pageAddr` - Page address.
  `off` - Item offset.
  `major` - Major version

#### getMinor

    public long getMinor(long pageAddr,
                         int off)

Specified by:
  `getMinor` in interface `TxLogIO`
Parameters:
  `pageAddr` - Page address.
  `off` - Item offset.
Returns:
  Minor version.

#### setMinor

    public void setMinor(long pageAddr,
                         int off,
                         long minor)

Specified by:
  `setMinor` in interface `TxLogIO`
Parameters:
  `pageAddr` - Page address.
  `off` - Item offset.
  `minor` - Minor version.

#### getState

    public byte getState(long pageAddr,
                         int off)

Specified by:
  `getState` in interface `TxLogIO`
Parameters:
  `pageAddr` - Page address.
  `off` - Item offset.
Returns:
  Transaction state.

#### setState

    public void setState(long pageAddr,
                         int off,
                         byte state)

Specified by:
  `setState` in interface `TxLogIO`
Parameters:
  `pageAddr` - Page address.
  `off` - Item offset.
  `state` - Transaction state.

${current.year} Copyright © Apache Software Foundation

Follow @ApacheIgnite

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