org.apache.ignite.internal.processors.cache.tree.mvcc.data

## Class MvccUpdateDataRowNative

- java.lang.Object
- - org.apache.ignite.internal.processors.cache.persistence.CacheDataRowAdapter
  - - org.apache.ignite.internal.processors.cache.tree.DataRow
    - - org.apache.ignite.internal.processors.cache.tree.mvcc.data.MvccDataRow
      - - org.apache.ignite.internal.processors.cache.tree.mvcc.data.MvccUpdateDataRowNative

All Implemented Interfaces:
  MvccUpdateVersionAware, MvccVersionAware, CacheDataRow, CacheSearchRow, Storable, BPlusTree.TreeRowClosure<CacheSearchRow,CacheDataRow>

    public class MvccUpdateDataRowNative
    extends MvccDataRow
    implements BPlusTree.TreeRowClosure<CacheSearchRow,CacheDataRow>

### Nested Class Summary

### Nested classes/interfaces inherited from class org.apache.ignite.internal.processors.cache.persistence.CacheDataRowAdapter

`CacheDataRowAdapter.RowData`

### Field Summary

### Fields inherited from class org.apache.ignite.internal.processors.cache.tree.DataRow

`hash, part`

### Fields inherited from class org.apache.ignite.internal.processors.cache.persistence.CacheDataRowAdapter

`cacheId, expireTime, key, link, val, ver`

### Constructor Summary

Constructors
Constructor and Description
`MvccUpdateDataRowNative(KeyCacheObject key, CacheObject val, GridCacheVersion ver, long expireTime, MvccSnapshot mvccSnapshot, MvccVersion newVer, int part, GridCacheContext cctx)`

### Method Summary

All Methods Instance Methods Concrete Methods
`GridLongList` `activeTransactions()`
`boolean` `apply(BPlusTree<CacheSearchRow,CacheDataRow> tree, BPlusIO<CacheSearchRow> io, long pageAddr, int idx)` Performs inspection or operation on a specified row and returns true if this row is required or matches or /operation successful (depending on the context).
`List<MvccLinkAwareSearchRow>` `cleanupRows()`
`int` `mvccOperationCounter()`
`CacheDataRow` `oldRow()`
`ResultType` `resultType()`
`String` `toString()`

### Methods inherited from class org.apache.ignite.internal.processors.cache.tree.mvcc.data.MvccDataRow

`headerSize, keyAbsentBeforeFlag, keyAbsentBeforeFlag, mvccCoordinatorVersion, mvccCounter, mvccTxState, mvccTxState, mvccVersion, newMvccCoordinatorVersion, newMvccCounter, newMvccOperationCounter, newMvccTxState, newMvccTxState, newMvccVersion, readHeader, size`

### Methods inherited from class org.apache.ignite.internal.processors.cache.tree.DataRow

`cacheId, hash, key, link, partition`

### Methods inherited from class org.apache.ignite.internal.processors.cache.persistence.CacheDataRowAdapter

`cacheId, expireTime, initFromLink, initFromLink, isReady, key, link, readFragment, readFullRow, readIncompleteCacheId, readIncompleteExpireTime, readIncompleteKey, readIncompleteValue, readIncompleteVersion, value, version`

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

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

### Methods inherited from interface org.apache.ignite.internal.processors.cache.mvcc.MvccUpdateVersionAware

`newMvccVersion, newMvccVersion, newMvccVersion`

### Methods inherited from interface org.apache.ignite.internal.processors.cache.mvcc.MvccVersionAware

`mvccVersion, mvccVersion, mvccVersion`

### Constructor Detail

#### MvccUpdateDataRowNative

    public MvccUpdateDataRowNative(KeyCacheObject key,
                                   CacheObject val,
                                   GridCacheVersion ver,
                                   long expireTime,
                                   MvccSnapshot mvccSnapshot,
                                   MvccVersion newVer,
                                   int part,
                                   GridCacheContext cctx)

Parameters:
  `key` - Key.
  `val` - Value.
  `ver` - Version.
  `expireTime` - Expire time.
  `mvccSnapshot` - MVCC snapshot.
  `newVer` - Update version.
  `part` - Partition.
  `cctx` - Cache context.

### Method Detail

#### apply

    public boolean apply(BPlusTree<CacheSearchRow,CacheDataRow> tree,
                         BPlusIO<CacheSearchRow> io,
                         long pageAddr,
                         int idx)
                  throws IgniteCheckedException

Performs inspection or operation on a specified row and returns true if this row is required or matches or /operation successful (depending on the context).

Specified by:
  `apply` in interface `BPlusTree.TreeRowClosure<CacheSearchRow,CacheDataRow>`
Parameters:
  `tree` - The tree.
  `io` - Th tree IO object.
  `pageAddr` - The page address.
  `idx` - The item index.
Returns:
  `True` if the item passes the predicate.
Throws:
  `IgniteCheckedException` - If failed.

#### mvccOperationCounter

    public int mvccOperationCounter()

Specified by:
  `mvccOperationCounter` in interface `MvccVersionAware`
Overrides:
  `mvccOperationCounter` in class `MvccDataRow`
Returns:
  Mvcc operation counter.

#### oldRow

    public CacheDataRow oldRow()

Returns:
  Old row.

#### resultType

    public ResultType resultType()

Returns:
  `True` if previous value was non-null.

#### activeTransactions

    @Nullable
    public GridLongList activeTransactions()

Returns:
  Active transactions to wait for.

#### cleanupRows

    public List<MvccLinkAwareSearchRow> cleanupRows()

Returns:
  Rows which are safe to cleanup.

#### toString

    public String toString()

Overrides:
  `toString` in class `MvccDataRow`

2018 Copyright © Apache Software Foundation

Follow @ApacheIgnite

Ignite Database and Caching Platform | : ver. 2.7.5
Release Date | : June 4 2019