org.apache.ignite.internal.processors.cache

## Class GridCacheMapEntry

- java.lang.Object
- - org.apache.ignite.internal.util.lang.GridMetadataAwareAdapter
  - - org.apache.ignite.internal.processors.cache.GridCacheMapEntry

All Implemented Interfaces:
  GridCacheEntryEx

Direct Known Subclasses:
  GridDistributedCacheEntry, GridLocalCacheEntry

    public abstract class GridCacheMapEntry
    extends GridMetadataAwareAdapter
    implements GridCacheEntryEx

Adapter for cache entry.

### Nested Class Summary

### Nested classes/interfaces inherited from class org.apache.ignite.internal.util.lang.GridMetadataAwareAdapter

`GridMetadataAwareAdapter.EntryKey`

### Field Summary

Fields
`static GridCacheAtomicVersionComparator` `ATOMIC_VER_COMPARATOR`
`protected GridCacheContext<?,?>` `cctx` Cache registry.
`protected byte` `flags` Flags: Deleted flag - mask `IS_DELETED_MASK` Unswapped flag - mask `IS_UNSWAPPED_MASK`
`protected KeyCacheObject` `key` Key.
`protected static IgniteLogger` `log` Logger.
`protected static AtomicReference<IgniteLogger>` `logRef` Static logger to avoid re-creation.
`protected CacheObject` `val` Value.
`protected GridCacheVersion` `ver` Version.

### Constructor Summary

Constructors
`protected` `GridCacheMapEntry(GridCacheContext<?,?> cctx, KeyCacheObject key)`

### Method Summary

All Methods Instance Methods Abstract Methods Concrete Methods
`@Nullable List<GridCacheEntryInfo>` `allVersionsInfo()`
`@Nullable GridCacheMvccCandidate` `candidate(GridCacheVersion ver)` Gets lock candidate for given lock ID.
`GridCacheMvccCandidate` `candidate(UUID nodeId, long threadId)`
`protected void` `checkObsolete()`
`protected void` `checkOwnerChanged(@Nullable CacheLockCandidates prevOwners, @Nullable CacheLockCandidates owners, CacheObject val)`
`protected void` `checkOwnerChanged(@Nullable CacheLockCandidates prevOwners, @Nullable CacheLockCandidates owners, CacheObject val, boolean inThreadChain)`
`boolean` `checkSerializableReadVersion(GridCacheVersion serReadVer)` Checks if there was read/write conflict in serializable transaction.
`protected abstract void` `checkThreadChain(GridCacheMvccCandidate owner)`
`boolean` `clear(GridCacheVersion ver, boolean readers)` Marks entry as obsolete and, if possible or required, removes it from swap storage.
`protected void` `clearReader(UUID nodeId)`
`protected void` `clearReaders()`
`void` `clearReserveForLoad(GridCacheVersion ver)`
`<K,V> GridCacheContext<K,V>` `context()`
`protected void` `decrementMapPublicSize()` Decrements public size of map.
`boolean` `deleted()` Note: this method works only for cache configured in ATOMIC mode or for cache that is data center replication target.
`protected boolean` `deletedUnlocked()`
`protected void` `deletedUnlocked(boolean deleted)`
`boolean` `detached()`
`boolean` `equals(Object o)`
`boolean` `evictInternal(GridCacheVersion obsoleteVer, @Nullable CacheEntryPredicate[] filter, boolean evictOffheap)`
`protected boolean` `evictionDisabled()`
`long` `expireTime()`
`long` `expireTimeExtras()`
`long` `expireTimeUnlocked()`
`int` `hashCode()`
`boolean` `hasLockCandidate(GridCacheVersion ver)` Checks if the candidate is either owner or pending.
`boolean` `hasLockCandidate(long threadId)` Checks if the candidate is either owner or pending.
`boolean` `hasLockCandidateUnsafe(GridCacheVersion ver)`
`protected boolean` `hasReaders()`
`boolean` `hasValue()`
`protected boolean` `hasValueUnlocked()`
`protected void` `incrementMapPublicSize()` Increments public size of map.
`@Nullable GridCacheEntryInfo` `info()`
`boolean` `initialValue(CacheObject val, GridCacheVersion ver, MvccVersion mvccVer, MvccVersion newMvccVer, byte mvccTxState, byte newMvccTxState, long ttl, long expireTime, boolean preload, AffinityTopologyVersion topVer, GridDrType drType, boolean fromStore, CacheDataRow row)` Sets new value if current version is `0`
`CacheObject` `innerGet(@Nullable GridCacheVersion ver, @Nullable IgniteInternalTx tx, boolean readThrough, boolean updateMetrics, boolean evt, UUID subjId, Object transformClo, String taskName, @Nullable IgniteCacheExpiryPolicy expirePlc, boolean keepBinary)`
`EntryGetResult` `innerGetAndReserveForLoad(boolean updateMetrics, boolean evt, UUID subjId, String taskName, @Nullable IgniteCacheExpiryPolicy expiryPlc, boolean keepBinary, @Nullable ReaderArguments readerArgs)`
`EntryGetResult` `innerGetVersioned(@Nullable GridCacheVersion ver, IgniteInternalTx tx, boolean updateMetrics, boolean evt, UUID subjId, Object transformClo, String taskName, @Nullable IgniteCacheExpiryPolicy expiryPlc, boolean keepBinary, @Nullable ReaderArguments readerArgs)`
`@Nullable CacheObject` `innerReload()` Reloads entry from underlying storage.

`GridCacheUpdateTxResult`

`innerRemove(@Nullable IgniteInternalTx tx, UUID evtNodeId, UUID affNodeId, boolean retval, boolean evt, boolean metrics, boolean keepBinary, boolean oldValPresent, @Nullable CacheObject oldVal, AffinityTopologyVersion topVer, CacheEntryPredicate[] filter, GridDrType drType, @Nullable GridCacheVersion explicitVer, @Nullable UUID subjId, String taskName, @Nullable GridCacheVersion dhtVer, @Nullable Long updateCntr)`

`GridCacheUpdateTxResult`

`innerSet(@Nullable IgniteInternalTx tx, UUID evtNodeId, UUID affNodeId, CacheObject val, boolean writeThrough, boolean retval, long ttl, boolean evt, boolean metrics, boolean keepBinary, boolean oldValPresent, @Nullable CacheObject oldVal, AffinityTopologyVersion topVer, CacheEntryPredicate[] filter, GridDrType drType, long drExpireTime, @Nullable GridCacheVersion explicitVer, @Nullable UUID subjId, String taskName, @Nullable GridCacheVersion dhtVer, @Nullable Long updateCntr)`

`GridCacheUpdateAtomicResult`

`innerUpdate(GridCacheVersion newVer, UUID evtNodeId, UUID affNodeId, GridCacheOperation op, @Nullable Object writeObj, @Nullable Object[] invokeArgs, boolean writeThrough, boolean readThrough, boolean retval, boolean keepBinary, @Nullable IgniteCacheExpiryPolicy expiryPlc, boolean evt, boolean metrics, boolean primary, boolean verCheck, AffinityTopologyVersion topVer, @Nullable CacheEntryPredicate[] filter, GridDrType drType, long explicitTtl, long explicitExpireTime, @Nullable GridCacheVersion conflictVer, boolean conflictResolve, boolean intercept, @Nullable UUID subjId, String taskName, @Nullable CacheObject prevVal, @Nullable Long updateCntr, @Nullable GridDhtAtomicAbstractUpdateFuture fut, boolean transformOp)`

`GridTuple3<Boolean,Object,javax.cache.processor.EntryProcessorResult<Object>>`

`innerUpdateLocal(GridCacheVersion ver, GridCacheOperation op, @Nullable Object writeObj, @Nullable Object[] invokeArgs, boolean writeThrough, boolean readThrough, boolean retval, boolean keepBinary, @Nullable javax.cache.expiry.ExpiryPolicy expiryPlc, boolean evt, boolean metrics, @Nullable CacheEntryPredicate[] filter, boolean intercept, @Nullable UUID subjId, String taskName, boolean transformOp)`
Update method for local cache in atomic mode.

`boolean` `invalidate(GridCacheVersion newVer)` Invalidates this entry.
`boolean` `isDht()`
`boolean` `isInternal()`
`boolean` `isLocal()`
`boolean` `isMvcc()`
`boolean` `isNear()`
`boolean` `isNew()` Checks if entry is new assuming lock is held externally.
`boolean` `isNewLocked()` Checks if entry is new while holding lock.
`boolean` `isReplicated()`
`boolean` `isStartVersion()`
`KeyCacheObject` `key()`
`protected Object` `keyValue(boolean cpy)`
`GridCacheMvccCandidate` `localCandidate(long threadId)`
`Collection<GridCacheMvccCandidate>` `localCandidates(GridCacheVersion... exclude)` Gets all local candidates.
`GridCacheMvccCandidate` `localOwner()`
`protected GridDhtLocalPartition` `localPartition()`
`boolean` `lockedBy(GridCacheVersion ver)`
`boolean` `lockedByAny(GridCacheVersion... exclude)`
`boolean` `lockedByCurrentThread()` Tests whether the entry is locked currently.
`boolean` `lockedByThread()`
`boolean` `lockedByThread(long threadId)`
`boolean` `lockedByThread(long threadId, GridCacheVersion exclude)`
`boolean` `lockedByThreadUnsafe(long threadId)` Will not fail for removed entries.
`boolean` `lockedByUnsafe(GridCacheVersion ver)`
`boolean` `lockedLocally(GridCacheVersion lockVer)`
`boolean` `lockedLocallyByIdOrThread(GridCacheVersion lockVer, long threadId)`
`boolean` `lockedLocallyUnsafe(GridCacheVersion lockVer)`
`void` `lockEntry()` Locks entry to protect from concurrent access.
`protected WALPointer` `logMvccUpdate(IgniteInternalTx tx, CacheObject val, long expireTime, long updCntr, MvccSnapshot mvccVer)`
`protected WALPointer` `logTxUpdate(IgniteInternalTx tx, CacheObject val, long expireTime, long updCntr)`
`protected void` `logUpdate(GridCacheOperation op, CacheObject val, GridCacheVersion writeVer, long expireTime, long updCntr)`
`boolean` `markObsolete(GridCacheVersion ver)` Sets obsolete flag if possible.
`protected boolean` `markObsolete0(GridCacheVersion ver, boolean clear, GridCacheObsoleteEntryExtras extras)` Note that `onMarkedObsolete()` should always be called after this method returns `true`.
`boolean` `markObsoleteIfEmpty(@Nullable GridCacheVersion obsoleteVer)` Sets obsolete flag if entry value is `null` or entry is expired and no locks are held.
`boolean` `markObsoleteVersion(GridCacheVersion ver)` Sets obsolete flag if entry version equals to `ver`.
`int` `memorySize()`
`@Nullable List<GridCacheMvccCandidate>` `mvccAllLocal()`
`protected @Nullable GridCacheMvcc` `mvccExtras()`
`protected void` `mvccExtras(@Nullable GridCacheMvcc mvcc)`
`GridCacheUpdateTxResult` `mvccLock(GridDhtTxLocalAdapter tx, MvccSnapshot mvccVer)`
`@Nullable CacheObject` `mvccPeek(boolean onheapOnly)` Retrieves the last committed MVCC entry version.
`boolean` `mvccPreloadEntry(List<GridCacheMvccEntryInfo> entryHist)` Apply entry history if not exists.
`GridCacheUpdateTxResult` `mvccRemove(IgniteInternalTx tx, UUID affNodeId, AffinityTopologyVersion topVer, MvccSnapshot mvccVer, boolean needHistory, boolean needOldVal, @Nullable CacheEntryPredicate filter, boolean retVal)`
`GridCacheUpdateTxResult` `mvccSet(IgniteInternalTx tx, UUID affNodeId, CacheObject val, javax.cache.processor.EntryProcessor entryProc, Object[] invokeArgs, long ttl0, AffinityTopologyVersion topVer, MvccSnapshot mvccVer, GridCacheOperation op, boolean needHistory, boolean noCreate, boolean needOldVal, CacheEntryPredicate filter, boolean retVal, boolean keepBinary)`
`GridCacheUpdateTxResult` `mvccUpdateRowsWithPreloadInfo(IgniteInternalTx tx, UUID affNodeId, AffinityTopologyVersion topVer, List<GridCacheEntryInfo> entries, GridCacheOperation op, MvccSnapshot mvccVer, IgniteUuid futId, int batchNum)`
`protected long` `nextPartitionCounter(AffinityTopologyVersion topVer, boolean primary, boolean initial, @Nullable Long primaryCntr)`
`protected long` `nextPartitionCounter(IgniteInternalTx tx, @Nullable Long updateCntr)`
`boolean` `obsolete()`
`boolean` `obsolete(GridCacheVersion exclude)`
`boolean` `obsoleteOrDeleted()`
`GridCacheVersion` `obsoleteVersion()`
`protected @Nullable GridCacheVersion` `obsoleteVersionExtras()`
`protected void` `onInvalidate()` Called when entry invalidated.
`void` `onMarkedObsolete()` This method should be called each time entry is marked obsolete other than by calling `GridCacheEntryEx.markObsolete(GridCacheVersion)`.
`boolean` `onTtlExpired(GridCacheVersion obsoleteVer)` Callback from ttl processor to cache entry indicating that entry is expired.
`void` `onUnlock()` Calls `GridDhtLocalPartition.onUnlock()` for this entry's partition.
`protected void` `onUpdateFinished(long cntr)`
`int` `partition()`
`boolean` `partitionValid()`
`@Nullable CacheObject` `peek()` Peeks into entry without loading value or updating statistics.
`@Nullable CacheObject` `peek(boolean heap, boolean offheap, AffinityTopologyVersion topVer, @Nullable IgniteCacheExpiryPolicy expiryPlc)` Peeks into entry without loading value or updating statistics.
`@Nullable CacheObject` `peekVisibleValue()` Peeks value provided to public API entries and to entry filters.
`long` `rawExpireTime()`
`CacheObject` `rawGet()`
`CacheObject` `rawPut(CacheObject val, long ttl)`
`long` `rawTtl()`
`protected @Nullable Object` `readThrough(@Nullable IgniteInternalTx tx, KeyCacheObject key, boolean reload, UUID subjId, String taskName)`
`protected void` `recordNodeId(UUID nodeId, AffinityTopologyVersion topVer)`
`Collection<GridCacheMvccCandidate>` `remoteMvccSnapshot(GridCacheVersion... exclude)` Gets all remote versions.
`protected void` `removeValue()` Removes value from offheap.
`protected boolean` `storeValue(@Nullable CacheObject val, long expireTime, GridCacheVersion ver)` Stores value in offheap.
`protected boolean` `storeValue(@Nullable CacheObject val, long expireTime, GridCacheVersion ver, @Nullable IgnitePredicate<CacheDataRow> predicate, @Nullable CacheDataRow row)` Stores value in off-heap.
`String` `toString()`
`void` `touch()` Touch this entry in its context's eviction manager.
`long` `ttl()`
`protected void` `ttlAndExpireTimeExtras(long ttl, long expireTime)`
`long` `ttlExtras()`
`IgniteTxKey` `txKey()`
`void` `txUnlock(IgniteInternalTx tx)` Unlocks acquired lock.
`void` `unlockEntry()` Unlocks entry previously locked by `GridCacheEntryEx.lockEntry()`.
`CacheObject` `unswap()`
`@Nullable CacheObject` `unswap(boolean needVal)` Unswap ignoring flags.
`CacheObject` `unswap(CacheDataRow row)`
`protected @Nullable CacheDataRow` `unswap(@Nullable CacheDataRow row, boolean checkExpire)` Unswaps an entry.
`protected void` `update(@Nullable CacheObject val, long expireTime, long ttl, GridCacheVersion ver, boolean addTracked)`
`void` `updateIndex(SchemaIndexCacheFilter filter, SchemaIndexCacheVisitorClosure clo)` Update index from within entry lock, passing key, value, and expiration time to provided closure.
`void` `updateTtl(@Nullable GridCacheVersion ver, long ttl)`
`boolean` `valid(AffinityTopologyVersion topVer)`
`protected void` `value(@Nullable CacheObject val)` Sets entry value.
`CacheObject` `valueBytes()`
`@Nullable CacheObject` `valueBytes(@Nullable GridCacheVersion ver)` Gets cached serialized value bytes.
`protected IgniteBiTuple<byte[],Byte>` `valueBytes0()`
`GridCacheVersion` `version()`
`GridCacheVersionedEntryEx` `versionedEntry(boolean keepBinary)` Create versioned entry for this cache entry.
`EntryGetResult` `versionedValue(CacheObject val, GridCacheVersion curVer, GridCacheVersion newVer, @Nullable IgniteCacheExpiryPolicy loadExpiryPlc, @Nullable ReaderArguments readerArgs)` Sets new value if passed in version matches the current version (used for read-through only).
`boolean` `visitable(CacheEntryPredicate[] filter)`
`<K,V> javax.cache.Cache.Entry<K,V>` `wrap()` Wraps this map entry into cache entry.
`<K,V> EvictableEntry<K,V>` `wrapEviction()`
`<K,V> javax.cache.Cache.Entry<K,V>` `wrapLazyValue(boolean keepBinary)` Wraps entry to an entry with lazy value get.
`<K,V> CacheEntryImplEx<K,V>` `wrapVersioned()`

### Methods inherited from class org.apache.ignite.internal.util.lang.GridMetadataAwareAdapter

`addMeta, addMetaIfAbsent, addMetaIfAbsent, allMeta, clone, copyMeta, copyMeta, hasMeta, hasMeta, meta, putMetaIfAbsent, readExternalMeta, removeAllMeta, removeMeta, removeMeta, replaceMeta, writeExternalMeta`

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

`finalize, getClass, notify, notifyAll, wait, wait, wait`

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

`addMeta, hasMeta, initialValue, initialValue, meta, putMetaIfAbsent, removeLock, removeMeta, removeMeta, replaceMeta, tmLock`

### Field Detail

#### ATOMIC_VER_COMPARATOR

    public static final GridCacheAtomicVersionComparator ATOMIC_VER_COMPARATOR

#### logRef

    protected static final AtomicReference<IgniteLogger> logRef

Static logger to avoid re-creation. Made static for test purpose.

#### log

    protected static volatile IgniteLogger log

Logger.

#### cctx

    @GridToStringExclude
    protected final GridCacheContext<?,?> cctx

Cache registry.

#### key

    @GridToStringInclude
    protected final KeyCacheObject key

Key.

#### val

    @GridToStringInclude
    protected CacheObject val

Value.

#### ver

    @GridToStringInclude
    protected GridCacheVersion ver

Version.

#### flags

    @GridToStringInclude
    protected byte flags

Flags:

- Deleted flag - mask `IS_DELETED_MASK`
- Unswapped flag - mask `IS_UNSWAPPED_MASK`

### Constructor Detail

#### GridCacheMapEntry

    protected GridCacheMapEntry(GridCacheContext<?,?> cctx,
                                KeyCacheObject key)

Parameters:
  `cctx` - Cache context.
  `key` - Cache key.

### Method Detail

#### value

    protected void value(@Nullable
                         @Nullable CacheObject val)

Sets entry value. If off-heap value storage is enabled, will serialize value to off-heap.

Parameters:
  `val` - Value to store.

#### memorySize

    public int memorySize()
                   throws IgniteCheckedException

Specified by:
  `memorySize` in interface `GridCacheEntryEx`
Returns:
  Memory size.
Throws:
  `IgniteCheckedException` - If failed.

#### isInternal

    public boolean isInternal()

Specified by:
  `isInternal` in interface `GridCacheEntryEx`
Returns:
  `True` if entry is internal cache entry.

#### isDht

    public boolean isDht()

Specified by:
  `isDht` in interface `GridCacheEntryEx`
Returns:
  `True` if DHT.

#### isLocal

    public boolean isLocal()

Specified by:
  `isLocal` in interface `GridCacheEntryEx`
Returns:
  `True` if local.

#### isMvcc

    public boolean isMvcc()

Specified by:
  `isMvcc` in interface `GridCacheEntryEx`
Returns:
  `True` if this is n entry from MVCC cache.

#### isNear

    public boolean isNear()

Specified by:
  `isNear` in interface `GridCacheEntryEx`
Returns:
  `True` if near.

#### isReplicated

    public boolean isReplicated()

Specified by:
  `isReplicated` in interface `GridCacheEntryEx`
Returns:
  `True` if replicated.

#### detached

    public boolean detached()

Specified by:
  `detached` in interface `GridCacheEntryEx`
Returns:
  `False` if entry belongs to cache map, `true` if this entry was created in colocated cache and node is not primary for this key.

#### context

    public <K,V> GridCacheContext<K,V> context()

Specified by:
  `context` in interface `GridCacheEntryEx`
Returns:
  Context.

#### isNew

    public boolean isNew()
                  throws GridCacheEntryRemovedException

Checks if entry is new assuming lock is held externally.

Specified by:
  `isNew` in interface `GridCacheEntryEx`
Returns:
  `True` if entry is new.
Throws:
  `GridCacheEntryRemovedException` - If entry was removed.

#### isNewLocked

    public boolean isNewLocked()
                        throws GridCacheEntryRemovedException

Checks if entry is new while holding lock.

Specified by:
  `isNewLocked` in interface `GridCacheEntryEx`
Returns:
  `True` if entry is new.
Throws:
  `GridCacheEntryRemovedException` - If entry was removed.

#### isStartVersion

    public boolean isStartVersion()

Returns:
  `True` if start version.

#### valid

    public boolean valid(AffinityTopologyVersion topVer)

Specified by:
  `valid` in interface `GridCacheEntryEx`
Parameters:
  `topVer` - Topology version where validation should be performed. When negative the latest available topology should be used.
Returns:
  Checks if value is valid.

#### partition

    public int partition()

Specified by:
  `partition` in interface `GridCacheEntryEx`
Returns:
  Partition ID.

#### localPartition

    protected GridDhtLocalPartition localPartition()

Returns:
  Local partition that owns this entry.

#### partitionValid

    public boolean partitionValid()

Specified by:
  `partitionValid` in interface `GridCacheEntryEx`
Returns:
  `True` if partition is in valid.

#### info

    @Nullable
    public @Nullable GridCacheEntryInfo info()

Specified by:
  `info` in interface `GridCacheEntryEx`
Returns:
  Entry info.

#### allVersionsInfo

    @Nullable
    public @Nullable List<GridCacheEntryInfo> allVersionsInfo()
                                                                 throws IgniteCheckedException

Specified by:
  `allVersionsInfo` in interface `GridCacheEntryEx`
Returns:
  Entry info for each MVCC version.
Throws:
  `IgniteCheckedException`

#### unswap

    public final CacheObject unswap()
                             throws IgniteCheckedException,
                                    GridCacheEntryRemovedException

Specified by:
  `unswap` in interface `GridCacheEntryEx`
Returns:
  Value.
Throws:
  `IgniteCheckedException` - If failed to read from swap storage.
  `GridCacheEntryRemovedException` - If entry was removed.

#### unswap

    public final CacheObject unswap(CacheDataRow row)
                             throws IgniteCheckedException,
                                    GridCacheEntryRemovedException

Specified by:
  `unswap` in interface `GridCacheEntryEx`
Parameters:
  `row` - Already extracted value.
Returns:
  Value.
Throws:
  `IgniteCheckedException` - If failed to read from swap storage.
  `GridCacheEntryRemovedException` - If entry was removed.

#### unswap

    @Nullable
    public final @Nullable CacheObject unswap(boolean needVal)
                                                 throws IgniteCheckedException,
                                                        GridCacheEntryRemovedException

Unswap ignoring flags.

Specified by:
  `unswap` in interface `GridCacheEntryEx`
Parameters:
  `needVal` - If `false` then do not need to deserialize value during unswap.
Returns:
  Value.
Throws:
  `IgniteCheckedException` - If failed.
  `GridCacheEntryRemovedException` - If entry was removed.

#### unswap

    @Nullable
    protected @Nullable CacheDataRow unswap(@Nullable
                                                      @Nullable CacheDataRow row,
                                                      boolean checkExpire)
                                               throws IgniteCheckedException,
                                                      GridCacheEntryRemovedException

Unswaps an entry.

Parameters:
  `row` - Already extracted cache data.
  `checkExpire` - If `true` checks for expiration, as result entry can be obsoleted or marked deleted.
Returns:
  Value.
Throws:
  `IgniteCheckedException` - If failed.
  `GridCacheEntryRemovedException` - If entry was removed.

#### valueBytes0

    protected IgniteBiTuple<byte[],Byte> valueBytes0()

Returns:
  Value bytes and flag indicating whether value is byte array.

#### readThrough

    @Nullable
    protected @Nullable Object readThrough(@Nullable
                                                     @Nullable IgniteInternalTx tx,
                                                     KeyCacheObject key,
                                                     boolean reload,
                                                     UUID subjId,
                                                     String taskName)
                                              throws IgniteCheckedException

Parameters:
  `tx` - Transaction.
  `key` - Key.
  `reload` - flag.
  `subjId` - Subject ID.
  `taskName` - Task name.
Returns:
  Read value.
Throws:
  `IgniteCheckedException` - If failed.

#### innerGet

    public final CacheObject innerGet(@Nullable
                                      @Nullable GridCacheVersion ver,
                                      @Nullable
                                      @Nullable IgniteInternalTx tx,
                                      boolean readThrough,
                                      boolean updateMetrics,
                                      boolean evt,
                                      UUID subjId,
                                      Object transformClo,
                                      String taskName,
                                      @Nullable
                                      @Nullable IgniteCacheExpiryPolicy expirePlc,
                                      boolean keepBinary)
                               throws IgniteCheckedException,
                                      GridCacheEntryRemovedException

Specified by:
  `innerGet` in interface `GridCacheEntryEx`
Parameters:
  `ver` - Cache version to set. The version will be used on updating entry instead of generated one.
  `tx` - Ongoing transaction (possibly null).
  `readThrough` - Flag indicating whether to read through.
  `updateMetrics` - If `true` then metrics should be updated.
  `evt` - Flag to signal event notification.
  `subjId` - Subject ID initiated this read.
  `transformClo` - Transform closure to record event.
  `taskName` - Task name.
  `expirePlc` - Expiry policy.
  `keepBinary` - Keep binary flag.
Returns:
  Cached value.
Throws:
  `IgniteCheckedException` - If loading value failed.
  `GridCacheEntryRemovedException` - If entry was removed.

#### innerGetAndReserveForLoad

    public EntryGetResult innerGetAndReserveForLoad(boolean updateMetrics,
                                                    boolean evt,
                                                    UUID subjId,
                                                    String taskName,
                                                    @Nullable
                                                    @Nullable IgniteCacheExpiryPolicy expiryPlc,
                                                    boolean keepBinary,
                                                    @Nullable
                                                    @Nullable ReaderArguments readerArgs)
                                             throws IgniteCheckedException,
                                                    GridCacheEntryRemovedException

Specified by:
  `innerGetAndReserveForLoad` in interface `GridCacheEntryEx`
Parameters:
  `updateMetrics` - If `true` then metrics should be updated.
  `evt` - Flag to signal event notification.
  `subjId` - Subject ID initiated this read.
  `taskName` - Task name.
  `expiryPlc` - Expiry policy.
  `keepBinary` - Keep binary flag.
  `readerArgs` - Reader will be added if not null.
Returns:
  Cached value, entry version and flag indicating if entry was reserved.
Throws:
  `IgniteCheckedException` - If loading value failed.
  `GridCacheEntryRemovedException` - If entry was removed.

#### innerGetVersioned

    public EntryGetResult innerGetVersioned(@Nullable
                                            @Nullable GridCacheVersion ver,
                                            IgniteInternalTx tx,
                                            boolean updateMetrics,
                                            boolean evt,
                                            UUID subjId,
                                            Object transformClo,
                                            String taskName,
                                            @Nullable
                                            @Nullable IgniteCacheExpiryPolicy expiryPlc,
                                            boolean keepBinary,
                                            @Nullable
                                            @Nullable ReaderArguments readerArgs)
                                     throws IgniteCheckedException,
                                            GridCacheEntryRemovedException

Specified by:
  `innerGetVersioned` in interface `GridCacheEntryEx`
Parameters:
  `ver` - Cache version to set. The version will be used on updating entry instead of generated one.
  `tx` - Cache transaction.
  `updateMetrics` - If `true` then metrics should be updated.
  `evt` - Flag to signal event notification.
  `subjId` - Subject ID initiated this read.
  `transformClo` - Transform closure to record event.
  `taskName` - Task name.
  `expiryPlc` - Expiry policy.
  `keepBinary` - Keep binary flag.
  `readerArgs` - Reader will be added if not null.
Returns:
  Cached value and entry version.
Throws:
  `IgniteCheckedException` - If loading value failed.
  `GridCacheEntryRemovedException` - If entry was removed.

#### innerReload

    @Nullable
    public final @Nullable CacheObject innerReload()
                                                      throws IgniteCheckedException,
                                                             GridCacheEntryRemovedException

Reloads entry from underlying storage.

Specified by:
  `innerReload` in interface `GridCacheEntryEx`
Returns:
  Reloaded value.
Throws:
  `IgniteCheckedException` - If reload failed.
  `GridCacheEntryRemovedException` - If entry has been removed.

#### recordNodeId

    protected void recordNodeId(UUID nodeId,
                                AffinityTopologyVersion topVer)

Parameters:
  `nodeId` - Node ID.

#### mvccSet

    public final GridCacheUpdateTxResult mvccSet(IgniteInternalTx tx,
                                                 UUID affNodeId,
                                                 CacheObject val,
                                                 javax.cache.processor.EntryProcessor entryProc,
                                                 Object[] invokeArgs,
                                                 long ttl0,
                                                 AffinityTopologyVersion topVer,
                                                 MvccSnapshot mvccVer,
                                                 GridCacheOperation op,
                                                 boolean needHistory,
                                                 boolean noCreate,
                                                 boolean needOldVal,
                                                 CacheEntryPredicate filter,
                                                 boolean retVal,
                                                 boolean keepBinary)
                                          throws IgniteCheckedException,
                                                 GridCacheEntryRemovedException

Specified by:
  `mvccSet` in interface `GridCacheEntryEx`
Parameters:
  `tx` - Cache transaction.
  `affNodeId` - Partitioned node iD.
  `val` - Value to set.
  `entryProc` - Entry processor.
  `invokeArgs` - Entry processor invoke arguments.
  `ttl0` - TTL.
  `topVer` - Topology version.
  `mvccVer` - Mvcc version.
  `op` - Cache operation.
  `needHistory` - Whether to collect rows created or affected by the current tx.
  `noCreate` - Entry should not be created when enabled, e.g. SQL INSERT.
  `needOldVal` - Flag if it is need to return the old value (value before current tx has been started).
  `filter` - Filter.
  `retVal` - Previous value return flag.
  `keepBinary` - Keep binary flag.
Returns:
  Tuple containing success flag and old value. If success is `false`, then value is `null`.
Throws:
  `IgniteCheckedException` - If storing value failed.
  `GridCacheEntryRemovedException` - If entry has been removed.

#### mvccRemove

    public final GridCacheUpdateTxResult mvccRemove(IgniteInternalTx tx,
                                                    UUID affNodeId,
                                                    AffinityTopologyVersion topVer,
                                                    MvccSnapshot mvccVer,
                                                    boolean needHistory,
                                                    boolean needOldVal,
                                                    @Nullable
                                                    @Nullable CacheEntryPredicate filter,
                                                    boolean retVal)
                                             throws IgniteCheckedException,
                                                    GridCacheEntryRemovedException

Specified by:
  `mvccRemove` in interface `GridCacheEntryEx`
Parameters:
  `tx` - Cache transaction.
  `affNodeId` - Partitioned node iD.
  `topVer` - Topology version.
  `mvccVer` - Mvcc version.
  `needHistory` - Whether to collect rows created or affected by the current tx.
  `needOldVal` - Flag if it is need to return the old value (value before current tx has been started).
  `filter` - Filter.
  `retVal` - Previous value return flag.
Returns:
  Tuple containing success flag and old value. If success is `false`, then value is `null`.
Throws:
  `IgniteCheckedException` - If storing value failed.
  `GridCacheEntryRemovedException` - If entry has been removed.

#### mvccLock

    public GridCacheUpdateTxResult mvccLock(GridDhtTxLocalAdapter tx,
                                            MvccSnapshot mvccVer)
                                     throws GridCacheEntryRemovedException,
                                            IgniteCheckedException

Specified by:
  `mvccLock` in interface `GridCacheEntryEx`
Parameters:
  `tx` - Transaction adapter.
  `mvccVer` - Mvcc version.
Returns:
  Lock result.
Throws:
  `GridCacheEntryRemovedException` - If entry has been removed.
  `IgniteCheckedException` - If locking failed

#### innerSet

    public final GridCacheUpdateTxResult innerSet(@Nullable
                                                  @Nullable IgniteInternalTx tx,
                                                  UUID evtNodeId,
                                                  UUID affNodeId,
                                                  CacheObject val,
                                                  boolean writeThrough,
                                                  boolean retval,
                                                  long ttl,
                                                  boolean evt,
                                                  boolean metrics,
                                                  boolean keepBinary,
                                                  boolean oldValPresent,
                                                  @Nullable
                                                  @Nullable CacheObject oldVal,
                                                  AffinityTopologyVersion topVer,
                                                  CacheEntryPredicate[] filter,
                                                  GridDrType drType,
                                                  long drExpireTime,
                                                  @Nullable
                                                  @Nullable GridCacheVersion explicitVer,
                                                  @Nullable
                                                  @Nullable UUID subjId,
                                                  String taskName,
                                                  @Nullable
                                                  @Nullable GridCacheVersion dhtVer,
                                                  @Nullable
                                                  @Nullable Long updateCntr)
                                           throws IgniteCheckedException,
                                                  GridCacheEntryRemovedException

Specified by:
  `innerSet` in interface `GridCacheEntryEx`
Parameters:
  `tx` - Cache transaction.
  `evtNodeId` - ID of node responsible for this change.
  `affNodeId` - Partitioned node iD.
  `val` - Value to set.
  `writeThrough` - If `true` then persist to storage.
  `retval` - `True` if value should be returned (and unmarshalled if needed).
  `ttl` - Time to live.
  `evt` - Flag to signal event notification.
  `metrics` - Flag to signal metrics update.
  `keepBinary` - Keep binary flag.
  `oldValPresent` - `True` if oldValue present.
  `oldVal` - Old value.
  `topVer` - Topology version.
  `filter` - Filter.
  `drType` - DR type.
  `drExpireTime` - DR expire time (if any).
  `explicitVer` - Explicit version (if any).
  `subjId` - Subject ID initiated this update.
  `taskName` - Task name.
  `dhtVer` - Dht version for near cache entry.
  `updateCntr` - Update counter.
Returns:
  Tuple containing success flag and old value. If success is `false`, then value is `null`.
Throws:
  `IgniteCheckedException` - If storing value failed.
  `GridCacheEntryRemovedException` - If entry has been removed.

#### keyValue

    protected Object keyValue(boolean cpy)

Parameters:
  `cpy` - Copy flag.
Returns:
  Key value.

#### innerRemove

    public final GridCacheUpdateTxResult innerRemove(@Nullable
                                                     @Nullable IgniteInternalTx tx,
                                                     UUID evtNodeId,
                                                     UUID affNodeId,
                                                     boolean retval,
                                                     boolean evt,
                                                     boolean metrics,
                                                     boolean keepBinary,
                                                     boolean oldValPresent,
                                                     @Nullable
                                                     @Nullable CacheObject oldVal,
                                                     AffinityTopologyVersion topVer,
                                                     CacheEntryPredicate[] filter,
                                                     GridDrType drType,
                                                     @Nullable
                                                     @Nullable GridCacheVersion explicitVer,
                                                     @Nullable
                                                     @Nullable UUID subjId,
                                                     String taskName,
                                                     @Nullable
                                                     @Nullable GridCacheVersion dhtVer,
                                                     @Nullable
                                                     @Nullable Long updateCntr)
                                              throws IgniteCheckedException,
                                                     GridCacheEntryRemovedException

Specified by:
  `innerRemove` in interface `GridCacheEntryEx`
Parameters:
  `tx` - Cache transaction.
  `evtNodeId` - ID of node responsible for this change.
  `affNodeId` - Partitioned node iD.
  `retval` - `True` if value should be returned (and unmarshalled if needed).
  `evt` - Flag to signal event notification.
  `metrics` - Flag to signal metrics notification.
  `keepBinary` - Keep binary flag.
  `oldValPresent` - `True` if oldValue present.
  `oldVal` - Old value.
  `topVer` - Topology version.
  `filter` - Filter.
  `drType` - DR type.
  `explicitVer` - Explicit version (if any).
  `subjId` - Subject ID initiated this update.
  `taskName` - Task name.
  `dhtVer` - Dht version for near cache entry.
Returns:
  Tuple containing success flag and old value. If success is `false`, then value is `null`.
Throws:
  `IgniteCheckedException` - If remove failed.
  `GridCacheEntryRemovedException` - If entry has been removed.

#### innerUpdateLocal

    public GridTuple3<Boolean,Object,javax.cache.processor.EntryProcessorResult<Object>> innerUpdateLocal(GridCacheVersion ver,
                                                                                                          GridCacheOperation op,
                                                                                                          @Nullable
                                                                                                          @Nullable Object writeObj,
                                                                                                          @Nullable
                                                                                                          @Nullable Object[] invokeArgs,
                                                                                                          boolean writeThrough,
                                                                                                          boolean readThrough,
                                                                                                          boolean retval,
                                                                                                          boolean keepBinary,
                                                                                                          @Nullable
                                                                                                          @Nullable javax.cache.expiry.ExpiryPolicy expiryPlc,
                                                                                                          boolean evt,
                                                                                                          boolean metrics,
                                                                                                          @Nullable
                                                                                                          @Nullable CacheEntryPredicate[] filter,
                                                                                                          boolean intercept,
                                                                                                          @Nullable
                                                                                                          @Nullable UUID subjId,
                                                                                                          String taskName,
                                                                                                          boolean transformOp)
                                                                                                   throws IgniteCheckedException,
                                                                                                          GridCacheEntryRemovedException

Update method for local cache in atomic mode.

Specified by:
  `innerUpdateLocal` in interface `GridCacheEntryEx`
Parameters:
  `ver` - Cache version.
  `op` - Operation.
  `writeObj` - Value. Type depends on operation.
  `invokeArgs` - Optional arguments for EntryProcessor.
  `writeThrough` - Write through flag.
  `readThrough` - Read through flag.
  `retval` - Return value flag.
  `expiryPlc` - Expiry policy..
  `evt` - Event flag.
  `metrics` - Metrics update flag.
  `filter` - Optional filter to check.
  `intercept` - If `true` then calls cache interceptor.
  `subjId` - Subject ID initiated this update.
  `taskName` - Task name.
  `transformOp` - `True` if transform operation caused update.
Returns:
  Tuple containing success flag, old value and result for invoke operation.
Throws:
  `IgniteCheckedException` - If update failed.
  `GridCacheEntryRemovedException` - If entry is obsolete.

#### innerUpdate

    public GridCacheUpdateAtomicResult innerUpdate(GridCacheVersion newVer,
                                                   UUID evtNodeId,
                                                   UUID affNodeId,
                                                   GridCacheOperation op,
                                                   @Nullable
                                                   @Nullable Object writeObj,
                                                   @Nullable
                                                   @Nullable Object[] invokeArgs,
                                                   boolean writeThrough,
                                                   boolean readThrough,
                                                   boolean retval,
                                                   boolean keepBinary,
                                                   @Nullable
                                                   @Nullable IgniteCacheExpiryPolicy expiryPlc,
                                                   boolean evt,
                                                   boolean metrics,
                                                   boolean primary,
                                                   boolean verCheck,
                                                   AffinityTopologyVersion topVer,
                                                   @Nullable
                                                   @Nullable CacheEntryPredicate[] filter,
                                                   GridDrType drType,
                                                   long explicitTtl,
                                                   long explicitExpireTime,
                                                   @Nullable
                                                   @Nullable GridCacheVersion conflictVer,
                                                   boolean conflictResolve,
                                                   boolean intercept,
                                                   @Nullable
                                                   @Nullable UUID subjId,
                                                   String taskName,
                                                   @Nullable
                                                   @Nullable CacheObject prevVal,
                                                   @Nullable
                                                   @Nullable Long updateCntr,
                                                   @Nullable
                                                   @Nullable GridDhtAtomicAbstractUpdateFuture fut,
                                                   boolean transformOp)
                                            throws IgniteCheckedException,
                                                   GridCacheEntryRemovedException,
                                                   GridClosureException

Specified by:
  `innerUpdate` in interface `GridCacheEntryEx`
Parameters:
  `newVer` - Cache version to set. Entry will be updated only if current version is less then passed version.
  `evtNodeId` - Event node ID.
  `affNodeId` - Affinity node ID.
  `op` - Update operation.
  `writeObj` - Value. Type depends on operation.
  `invokeArgs` - Optional arguments for entry processor.
  `writeThrough` - Write through flag.
  `readThrough` - Read through flag.
  `retval` - Return value flag.
  `expiryPlc` - Expiry policy.
  `evt` - Event flag.
  `metrics` - Metrics update flag.
  `primary` - If update is performed on primary node (the one which assigns version).
  `verCheck` - Whether update should check current version and ignore update if current version is greater than passed in.
  `topVer` - Topology version.
  `filter` - Optional filter to check.
  `drType` - DR type.
  `explicitTtl` - Conflict TTL (if any).
  `explicitExpireTime` - Conflict expire time (if any).
  `conflictVer` - DR version (if any).
  `conflictResolve` - If `true` then performs conflicts resolution.
  `intercept` - If `true` then calls cache interceptor.
  `subjId` - Subject ID initiated this update.
  `taskName` - Task name.
  `updateCntr` - Update counter.
  `fut` - Dht atomic future.
  `transformOp` - `True` if transform operation caused update.
Returns:
  Tuple where first value is flag showing whether operation succeeded, second value is old entry value if return value is requested, third is updated entry value, fourth is the version to enqueue for deferred delete the fifth is DR conflict context or `null` if conflict resolution was not performed, the last boolean - whether update should be propagated to backups or not.
Throws:
  `IgniteCheckedException` - If update failed.
  `GridCacheEntryRemovedException` - If entry is obsolete.
  `GridClosureException`

#### hasReaders

    protected boolean hasReaders()
                          throws GridCacheEntryRemovedException

Returns:
  `true` if entry has readers. It makes sense only for dht entry.
Throws:
  `GridCacheEntryRemovedException` - If removed.

#### clearReaders

    protected void clearReaders()

#### clearReader

    protected void clearReader(UUID nodeId)
                        throws GridCacheEntryRemovedException

Parameters:
  `nodeId` - Node ID to clear.
Throws:
  `GridCacheEntryRemovedException` - If removed.

#### clear

    public boolean clear(GridCacheVersion ver,
                         boolean readers)
                  throws IgniteCheckedException

Marks entry as obsolete and, if possible or required, removes it from swap storage.

Specified by:
  `clear` in interface `GridCacheEntryEx`
Parameters:
  `ver` - Obsolete version.
  `readers` - Flag to clear readers as well.
Returns:
  `True` if entry was not being used, passed the filter and could be removed.
Throws:
  `IgniteCheckedException` - If failed to remove from swap.

#### obsoleteVersion

    public GridCacheVersion obsoleteVersion()

Specified by:
  `obsoleteVersion` in interface `GridCacheEntryEx`
Returns:
  Not-null version if entry is obsolete.

#### markObsolete

    public boolean markObsolete(GridCacheVersion ver)

Sets obsolete flag if possible.

Specified by:
  `markObsolete` in interface `GridCacheEntryEx`
Parameters:
  `ver` - Version to set as obsolete.
Returns:
  `True` if entry is obsolete, `false` if entry is still used by other threads or nodes.

#### markObsoleteIfEmpty

    public boolean markObsoleteIfEmpty(@Nullable
                                       @Nullable GridCacheVersion obsoleteVer)
                                throws IgniteCheckedException

Sets obsolete flag if entry value is `null` or entry is expired and no locks are held.

Specified by:
  `markObsoleteIfEmpty` in interface `GridCacheEntryEx`
Parameters:
  `obsoleteVer` - Version to set as obsolete.
Returns:
  `True` if entry was marked obsolete.
Throws:
  `IgniteCheckedException` - If failed.

#### markObsoleteVersion

    public boolean markObsoleteVersion(GridCacheVersion ver)

Sets obsolete flag if entry version equals to `ver`.

Specified by:
  `markObsoleteVersion` in interface `GridCacheEntryEx`
Parameters:
  `ver` - Version to compare with.
Returns:
  `True` if marked obsolete.

#### evictionDisabled

    protected boolean evictionDisabled()

Returns:
  `True` if this entry should not be evicted from cache.

#### markObsolete0

    protected final boolean markObsolete0(GridCacheVersion ver,
                                          boolean clear,
                                          GridCacheObsoleteEntryExtras extras)

Note that `onMarkedObsolete()` should always be called after this method returns `true`.

Parameters:
  `ver` - Version.
  `clear` - `True` to clear.
  `extras` - Predefined extras.
Returns:
  `True` if entry is obsolete, `false` if entry is still used by other threads or nodes.

#### onMarkedObsolete

    public void onMarkedObsolete()

This method should be called each time entry is marked obsolete other than by calling `GridCacheEntryEx.markObsolete(GridCacheVersion)`.

Specified by:
  `onMarkedObsolete` in interface `GridCacheEntryEx`

#### obsolete

    public final boolean obsolete()

Specified by:
  `obsolete` in interface `GridCacheEntryEx`
Returns:
  `True` if entry is obsolete.

#### obsolete

    public final boolean obsolete(GridCacheVersion exclude)

Specified by:
  `obsolete` in interface `GridCacheEntryEx`
Parameters:
  `exclude` - Obsolete version to ignore.
Returns:
  `True` if obsolete version is not `null` and is not the passed in version.

#### invalidate

    public boolean invalidate(GridCacheVersion newVer)
                       throws IgniteCheckedException

Invalidates this entry.

Specified by:
  `invalidate` in interface `GridCacheEntryEx`
Parameters:
  `newVer` - New version to set.
Returns:
  `true` if entry is obsolete.
Throws:
  `IgniteCheckedException` - If swap could not be released.

#### onInvalidate

    protected void onInvalidate()

Called when entry invalidated.

#### update

    protected final void update(@Nullable
                                @Nullable CacheObject val,
                                long expireTime,
                                long ttl,
                                GridCacheVersion ver,
                                boolean addTracked)

Parameters:
  `val` - New value.
  `expireTime` - Expiration time.
  `ttl` - Time to live.
  `ver` - Update version.

#### checkObsolete

    protected void checkObsolete()
                          throws GridCacheEntryRemovedException

Throws:
  `GridCacheEntryRemovedException` - If entry is obsolete.

#### key

    public KeyCacheObject key()

Specified by:
  `key` in interface `GridCacheEntryEx`
Returns:
  Key.

#### txKey

    public IgniteTxKey txKey()

Specified by:
  `txKey` in interface `GridCacheEntryEx`
Returns:
  Transaction key.

#### version

    public GridCacheVersion version()
                             throws GridCacheEntryRemovedException

Specified by:
  `version` in interface `GridCacheEntryEx`
Returns:
  Version.
Throws:
  `GridCacheEntryRemovedException` - If entry has been removed.

#### checkSerializableReadVersion

    public boolean checkSerializableReadVersion(GridCacheVersion serReadVer)
                                         throws GridCacheEntryRemovedException

Checks if there was read/write conflict in serializable transaction.

Specified by:
  `checkSerializableReadVersion` in interface `GridCacheEntryEx`
Parameters:
  `serReadVer` - Version read in serializable transaction.
Returns:
  `True` if version check passed.
Throws:
  `GridCacheEntryRemovedException` - If entry has been removed.

#### mvccPeek

    @Nullable
    public @Nullable CacheObject mvccPeek(boolean onheapOnly)
                                             throws GridCacheEntryRemovedException,
                                                    IgniteCheckedException

Retrieves the last committed MVCC entry version.

Specified by:
  `mvccPeek` in interface `GridCacheEntryEx`
Parameters:
  `onheapOnly` - `True` if a specified peek mode instructs to look only in the on-heap storage.
Returns:
  Last committed entry if either or `null` otherwise.
Throws:
  `GridCacheEntryRemovedException` - If entry has been removed.
  `IgniteCheckedException` - If failed.

#### peek

    @Nullable
    public @Nullable CacheObject peek(boolean heap,
                                                boolean offheap,
                                                AffinityTopologyVersion topVer,
                                                @Nullable
                                                @Nullable IgniteCacheExpiryPolicy expiryPlc)
                                         throws GridCacheEntryRemovedException,
                                                IgniteCheckedException

Peeks into entry without loading value or updating statistics.

Specified by:
  `peek` in interface `GridCacheEntryEx`
Parameters:
  `heap` - Read from heap flag.
  `offheap` - Read from offheap flag.
  `topVer` - Topology version.
  `expiryPlc` - Expiry policy if TTL should be updated.
Returns:
  Value.
Throws:
  `GridCacheEntryRemovedException` - If entry has been removed.
  `IgniteCheckedException` - If failed.

#### peek

    @Nullable
    public @Nullable CacheObject peek()
                                         throws GridCacheEntryRemovedException,
                                                IgniteCheckedException

Peeks into entry without loading value or updating statistics.

Specified by:
  `peek` in interface `GridCacheEntryEx`
Returns:
  Value.
Throws:
  `GridCacheEntryRemovedException` - If entry has been removed.
  `IgniteCheckedException` - If failed.

#### rawGet

    public CacheObject rawGet()

Specified by:
  `rawGet` in interface `GridCacheEntryEx`
Returns:
  Value.

#### hasValue

    public final boolean hasValue()

Specified by:
  `hasValue` in interface `GridCacheEntryEx`
Returns:
  `True` if has value or value bytes.

#### hasValueUnlocked

    protected final boolean hasValueUnlocked()

Returns:
  `True` if this entry has value.

#### rawPut

    public CacheObject rawPut(CacheObject val,
                              long ttl)

Specified by:
  `rawPut` in interface `GridCacheEntryEx`
Parameters:
  `val` - New value.
  `ttl` - Time to live.
Returns:
  Old value.

#### initialValue

    public boolean initialValue(CacheObject val,
                                GridCacheVersion ver,
                                MvccVersion mvccVer,
                                MvccVersion newMvccVer,
                                byte mvccTxState,
                                byte newMvccTxState,
                                long ttl,
                                long expireTime,
                                boolean preload,
                                AffinityTopologyVersion topVer,
                                GridDrType drType,
                                boolean fromStore,
                                CacheDataRow row)
                         throws IgniteCheckedException,
                                GridCacheEntryRemovedException

Sets new value if current version is `0`

Specified by:
  `initialValue` in interface `GridCacheEntryEx`
Parameters:
  `val` - New value.
  `ver` - Version to use.
  `mvccVer` - Mvcc version.
  `newMvccVer` - New mvcc version.
  `mvccTxState` - Tx state hint for mvcc version.
  `newMvccTxState` - Tx state hint for new mvcc version.
  `ttl` - Time to live.
  `expireTime` - Expiration time.
  `preload` - Flag indicating whether entry is being preloaded.
  `topVer` - Topology version.
  `drType` - DR type.
  `fromStore` - `True` if value was loaded from store.
  `row` - Pre-created data row, associated with this cache entry.
Returns:
  `True` if initial value was set.
Throws:
  `IgniteCheckedException` - In case of error.
  `GridCacheEntryRemovedException` - If entry was removed.

#### onUpdateFinished

    protected void onUpdateFinished(long cntr)

Parameters:
  `cntr` - Updated partition counter.

#### nextPartitionCounter

    protected long nextPartitionCounter(AffinityTopologyVersion topVer,
                                        boolean primary,
                                        boolean initial,
                                        @Nullable
                                        @Nullable Long primaryCntr)

Parameters:
  `topVer` - Topology version for current operation.
  `primary` - Primary node update flag.
  `initial` - `True` if initial value.
  `primaryCntr` - Counter assigned on primary node.
Returns:
  Update counter.

#### nextPartitionCounter

    protected long nextPartitionCounter(IgniteInternalTx tx,
                                        @Nullable
                                        @Nullable Long updateCntr)

Parameters:
  `tx` - Tx.
  `updateCntr` - Update counter.

#### versionedEntry

    public GridCacheVersionedEntryEx versionedEntry(boolean keepBinary)
                                             throws IgniteCheckedException,
                                                    GridCacheEntryRemovedException

Create versioned entry for this cache entry.

Specified by:
  `versionedEntry` in interface `GridCacheEntryEx`
Parameters:
  `keepBinary` - Keep binary flag.
Returns:
  Versioned entry.
Throws:
  `IgniteCheckedException` - In case of error.
  `GridCacheEntryRemovedException` - If entry was removed.

#### clearReserveForLoad

    public void clearReserveForLoad(GridCacheVersion ver)

Specified by:
  `clearReserveForLoad` in interface `GridCacheEntryEx`
Parameters:
  `ver` - Expected entry version.

#### versionedValue

    public EntryGetResult versionedValue(CacheObject val,
                                         GridCacheVersion curVer,
                                         GridCacheVersion newVer,
                                         @Nullable
                                         @Nullable IgniteCacheExpiryPolicy loadExpiryPlc,
                                         @Nullable
                                         @Nullable ReaderArguments readerArgs)
                                  throws IgniteCheckedException,
                                         GridCacheEntryRemovedException

Sets new value if passed in version matches the current version (used for read-through only).

Specified by:
  `versionedValue` in interface `GridCacheEntryEx`
Parameters:
  `val` - New value.
  `curVer` - Version to match or `null` if match is not required.
  `newVer` - Version to set.
  `loadExpiryPlc` - Expiry policy if entry is loaded from store.
  `readerArgs` - Reader will be added if not null.
Returns:
  Current version and value.
Throws:
  `IgniteCheckedException` - If index could not be updated.
  `GridCacheEntryRemovedException` - If entry was removed.

#### hasLockCandidate

    public boolean hasLockCandidate(GridCacheVersion ver)
                             throws GridCacheEntryRemovedException

Checks if the candidate is either owner or pending.

Specified by:
  `hasLockCandidate` in interface `GridCacheEntryEx`
Parameters:
  `ver` - Candidate version to check.
Returns:
  `True` if the candidate is either owner or pending.
Throws:
  `GridCacheEntryRemovedException` - If entry was removed.

#### hasLockCandidate

    public boolean hasLockCandidate(long threadId)
                             throws GridCacheEntryRemovedException

Checks if the candidate is either owner or pending.

Specified by:
  `hasLockCandidate` in interface `GridCacheEntryEx`
Parameters:
  `threadId` - ThreadId.
Returns:
  `True` if the candidate is either owner or pending.
Throws:
  `GridCacheEntryRemovedException` - If entry was removed.

#### lockedByAny

    public boolean lockedByAny(GridCacheVersion... exclude)
                        throws GridCacheEntryRemovedException

Specified by:
  `lockedByAny` in interface `GridCacheEntryEx`
Parameters:
  `exclude` - Exclude versions.
Returns:
  `True` if lock is owned by any thread or node.
Throws:
  `GridCacheEntryRemovedException` - If entry was removed.

#### lockedByThread

    public boolean lockedByThread()
                           throws GridCacheEntryRemovedException

Specified by:
  `lockedByThread` in interface `GridCacheEntryEx`
Returns:
  `True` if lock is owned by current thread.
Throws:
  `GridCacheEntryRemovedException` - If entry was removed.

#### lockedLocally

    public boolean lockedLocally(GridCacheVersion lockVer)
                          throws GridCacheEntryRemovedException

Specified by:
  `lockedLocally` in interface `GridCacheEntryEx`
Parameters:
  `lockVer` - Lock ID to check.
Returns:
  `True` if lock is owned by candidate.
Throws:
  `GridCacheEntryRemovedException` - If entry was removed.

#### lockedByThread

    public boolean lockedByThread(long threadId,
                                  GridCacheVersion exclude)
                           throws GridCacheEntryRemovedException

Specified by:
  `lockedByThread` in interface `GridCacheEntryEx`
Parameters:
  `threadId` - Thread ID to check.
  `exclude` - Version to exclude from check.
Returns:
  `True` if lock is owned by given thread.
Throws:
  `GridCacheEntryRemovedException` - If entry was removed.

#### lockedLocallyByIdOrThread

    public boolean lockedLocallyByIdOrThread(GridCacheVersion lockVer,
                                             long threadId)
                                      throws GridCacheEntryRemovedException

Specified by:
  `lockedLocallyByIdOrThread` in interface `GridCacheEntryEx`
Parameters:
  `lockVer` - Lock ID.
  `threadId` - Thread ID.
Returns:
  `True` if locked either locally or by thread.
Throws:
  `GridCacheEntryRemovedException` - If removed.

#### lockedByThread

    public boolean lockedByThread(long threadId)
                           throws GridCacheEntryRemovedException

Specified by:
  `lockedByThread` in interface `GridCacheEntryEx`
Parameters:
  `threadId` - Thread ID to check.
Returns:
  `True` if lock is owned by given thread.
Throws:
  `GridCacheEntryRemovedException` - If entry was removed.

#### lockedBy

    public boolean lockedBy(GridCacheVersion ver)
                     throws GridCacheEntryRemovedException

Specified by:
  `lockedBy` in interface `GridCacheEntryEx`
Parameters:
  `ver` - Version to check for ownership.
Returns:
  `True` if owner has the specified version.
Throws:
  `GridCacheEntryRemovedException` - If entry was removed.

#### lockedByThreadUnsafe

    public boolean lockedByThreadUnsafe(long threadId)

Will not fail for removed entries.

Specified by:
  `lockedByThreadUnsafe` in interface `GridCacheEntryEx`
Parameters:
  `threadId` - Thread ID to check.
Returns:
  `True` if lock is owned by given thread.

#### lockedByUnsafe

    public boolean lockedByUnsafe(GridCacheVersion ver)

Specified by:
  `lockedByUnsafe` in interface `GridCacheEntryEx`
Parameters:
  `ver` - Version to check for ownership.
Returns:
  `True` if owner has the specified version.

#### lockedLocallyUnsafe

    public boolean lockedLocallyUnsafe(GridCacheVersion lockVer)

Specified by:
  `lockedLocallyUnsafe` in interface `GridCacheEntryEx`
Parameters:
  `lockVer` - Lock ID to check.
Returns:
  `True` if lock is owned by candidate.

#### hasLockCandidateUnsafe

    public boolean hasLockCandidateUnsafe(GridCacheVersion ver)

Specified by:
  `hasLockCandidateUnsafe` in interface `GridCacheEntryEx`
Parameters:
  `ver` - Lock version to check.
Returns:
  `True` if has candidate with given lock ID.

#### localCandidates

    public Collection<GridCacheMvccCandidate> localCandidates(GridCacheVersion... exclude)
                                                       throws GridCacheEntryRemovedException

Gets all local candidates.

Specified by:
  `localCandidates` in interface `GridCacheEntryEx`
Parameters:
  `exclude` - Versions to exclude from check.
Returns:
  All local candidates.
Throws:
  `GridCacheEntryRemovedException` - If entry was removed.

#### remoteMvccSnapshot

    public Collection<GridCacheMvccCandidate> remoteMvccSnapshot(GridCacheVersion... exclude)

Gets all remote versions.

Specified by:
  `remoteMvccSnapshot` in interface `GridCacheEntryEx`
Parameters:
  `exclude` - Exclude version.
Returns:
  All remote versions minus the excluded ones, if any.

#### candidate

    @Nullable
    public @Nullable GridCacheMvccCandidate candidate(GridCacheVersion ver)
                                                         throws GridCacheEntryRemovedException

Gets lock candidate for given lock ID.

Specified by:
  `candidate` in interface `GridCacheEntryEx`
Parameters:
  `ver` - Lock version.
Returns:
  Lock candidate for given ID.
Throws:
  `GridCacheEntryRemovedException` - If entry was removed.

#### localCandidate

    public GridCacheMvccCandidate localCandidate(long threadId)
                                          throws GridCacheEntryRemovedException

Specified by:
  `localCandidate` in interface `GridCacheEntryEx`
Parameters:
  `threadId` - Thread ID.
Returns:
  Local candidate.
Throws:
  `GridCacheEntryRemovedException` - If entry was removed.

#### candidate

    public GridCacheMvccCandidate candidate(UUID nodeId,
                                            long threadId)
                                     throws GridCacheEntryRemovedException

Specified by:
  `candidate` in interface `GridCacheEntryEx`
Parameters:
  `nodeId` - Node ID.
  `threadId` - Thread ID.
Returns:
  Candidate.
Throws:
  `GridCacheEntryRemovedException` - If entry was removed.

#### localOwner

    public GridCacheMvccCandidate localOwner()
                                      throws GridCacheEntryRemovedException

Specified by:
  `localOwner` in interface `GridCacheEntryEx`
Returns:
  Local owner.
Throws:
  `GridCacheEntryRemovedException` - If entry was removed.

#### rawExpireTime

    public long rawExpireTime()

Specified by:
  `rawExpireTime` in interface `GridCacheEntryEx`
Returns:
  Expire time, without accounting for transactions or removals.

#### expireTimeUnlocked

    public long expireTimeUnlocked()

Specified by:
  `expireTimeUnlocked` in interface `GridCacheEntryEx`
Returns:
  Expiration time. Does not check for entry obsolete flag.

#### onTtlExpired

    public boolean onTtlExpired(GridCacheVersion obsoleteVer)
                         throws GridCacheEntryRemovedException

Callback from ttl processor to cache entry indicating that entry is expired.

Specified by:
  `onTtlExpired` in interface `GridCacheEntryEx`
Parameters:
  `obsoleteVer` - Version to set obsolete if entry is expired.
Returns:
  `True` if this entry was expired as a result of this call.
Throws:
  `GridCacheEntryRemovedException` - If entry was removed.

#### rawTtl

    public long rawTtl()

Specified by:
  `rawTtl` in interface `GridCacheEntryEx`
Returns:
  Time to live, without accounting for transactions or removals.

#### expireTime

    public long expireTime()
                    throws GridCacheEntryRemovedException

Specified by:
  `expireTime` in interface `GridCacheEntryEx`
Returns:
  Expiration time.
Throws:
  `GridCacheEntryRemovedException` - If entry was removed.

#### ttl

    public long ttl()
             throws GridCacheEntryRemovedException

Specified by:
  `ttl` in interface `GridCacheEntryEx`
Returns:
  Time to live.
Throws:
  `GridCacheEntryRemovedException` - If entry was removed.

#### updateTtl

    public void updateTtl(@Nullable
                          @Nullable GridCacheVersion ver,
                          long ttl)
                   throws GridCacheEntryRemovedException

Specified by:
  `updateTtl` in interface `GridCacheEntryEx`
Parameters:
  `ver` - Version.
  `ttl` - Time to live.
Throws:
  `GridCacheEntryRemovedException`

#### valueBytes

    public CacheObject valueBytes()
                           throws GridCacheEntryRemovedException

Specified by:
  `valueBytes` in interface `GridCacheEntryEx`
Returns:
  Value bytes.
Throws:
  `GridCacheEntryRemovedException` - If entry was removed.

#### valueBytes

    @Nullable
    public @Nullable CacheObject valueBytes(@Nullable
                                                      @Nullable GridCacheVersion ver)
                                               throws IgniteCheckedException,
                                                      GridCacheEntryRemovedException

Gets cached serialized value bytes.

Specified by:
  `valueBytes` in interface `GridCacheEntryEx`
Parameters:
  `ver` - Version for which to get value bytes.
Returns:
  Serialized value bytes.
Throws:
  `IgniteCheckedException` - If serialization failed.
  `GridCacheEntryRemovedException` - If entry was removed.

#### storeValue

    protected boolean storeValue(@Nullable
                                 @Nullable CacheObject val,
                                 long expireTime,
                                 GridCacheVersion ver)
                          throws IgniteCheckedException

Stores value in offheap.

Parameters:
  `val` - Value.
  `expireTime` - Expire time.
  `ver` - New entry version.
Throws:
  `IgniteCheckedException` - If update failed.

#### storeValue

    protected boolean storeValue(@Nullable
                                 @Nullable CacheObject val,
                                 long expireTime,
                                 GridCacheVersion ver,
                                 @Nullable
                                 @Nullable IgnitePredicate<CacheDataRow> predicate,
                                 @Nullable
                                 @Nullable CacheDataRow row)
                          throws IgniteCheckedException

Stores value in off-heap.

Parameters:
  `val` - Value.
  `expireTime` - Expire time.
  `ver` - New entry version.
  `predicate` - Optional predicate.
  `row` - Pre-created data row, associated with this cache entry.
Returns:
  `True` if storage was modified.
Throws:
  `IgniteCheckedException` - If update failed.

#### logUpdate

    protected void logUpdate(GridCacheOperation op,
                             CacheObject val,
                             GridCacheVersion writeVer,
                             long expireTime,
                             long updCntr)
                      throws IgniteCheckedException

Parameters:
  `op` - Update operation.
  `val` - Write value.
  `writeVer` - Write version.
  `expireTime` - Expire time.
  `updCntr` - Update counter.
Throws:
  `IgniteCheckedException`

#### logTxUpdate

    protected WALPointer logTxUpdate(IgniteInternalTx tx,
                                     CacheObject val,
                                     long expireTime,
                                     long updCntr)
                              throws IgniteCheckedException

Parameters:
  `tx` - Transaction.
  `val` - Value.
  `expireTime` - Expire time (or 0 if not applicable).
  `updCntr` - Update counter.
Throws:
  `IgniteCheckedException` - In case of log failure.

#### logMvccUpdate

    protected WALPointer logMvccUpdate(IgniteInternalTx tx,
                                       CacheObject val,
                                       long expireTime,
                                       long updCntr,
                                       MvccSnapshot mvccVer)
                                throws IgniteCheckedException

Parameters:
  `tx` - Transaction.
  `val` - Value.
  `expireTime` - Expire time (or 0 if not applicable). *
  `updCntr` - Update counter.
  `mvccVer` - Mvcc version.
Throws:
  `IgniteCheckedException` - In case of log failure.

#### removeValue

    protected void removeValue()
                        throws IgniteCheckedException

Removes value from offheap.

Throws:
  `IgniteCheckedException` - If failed.

#### wrap

    public <K,V> javax.cache.Cache.Entry<K,V> wrap()

Wraps this map entry into cache entry.

Specified by:
  `wrap` in interface `GridCacheEntryEx`
Returns:
  Wrapped entry.

#### wrapLazyValue

    public <K,V> javax.cache.Cache.Entry<K,V> wrapLazyValue(boolean keepBinary)

Wraps entry to an entry with lazy value get.

Specified by:
  `wrapLazyValue` in interface `GridCacheEntryEx`
Parameters:
  `keepBinary` - Keep binary flag.
Returns:
  Entry.

#### peekVisibleValue

    @Nullable
    public @Nullable CacheObject peekVisibleValue()

Peeks value provided to public API entries and to entry filters.

Specified by:
  `peekVisibleValue` in interface `GridCacheEntryEx`
Returns:
  Value.

#### updateIndex

    public void updateIndex(SchemaIndexCacheFilter filter,
                            SchemaIndexCacheVisitorClosure clo)
                     throws IgniteCheckedException,
                            GridCacheEntryRemovedException

Update index from within entry lock, passing key, value, and expiration time to provided closure.

Specified by:
  `updateIndex` in interface `GridCacheEntryEx`
Parameters:
  `filter` - Row filter.
  `clo` - Closure to apply to key, value, and expiration time.
Throws:
  `IgniteCheckedException` - If failed.
  `GridCacheEntryRemovedException` - If entry was removed.

#### wrapEviction

    public <K,V> EvictableEntry<K,V> wrapEviction()

Specified by:
  `wrapEviction` in interface `GridCacheEntryEx`
Returns:
  Entry which is safe to pass into eviction policy.

#### wrapVersioned

    public <K,V> CacheEntryImplEx<K,V> wrapVersioned()

Specified by:
  `wrapVersioned` in interface `GridCacheEntryEx`
Returns:
  Entry which holds key and version (no value, since entry is intended to be used in sync evictions checks).

#### evictInternal

    public boolean evictInternal(GridCacheVersion obsoleteVer,
                                 @Nullable
                                 @Nullable CacheEntryPredicate[] filter,
                                 boolean evictOffheap)
                          throws IgniteCheckedException

Specified by:
  `evictInternal` in interface `GridCacheEntryEx`
Parameters:
  `obsoleteVer` - Version for eviction.
  `filter` - Optional filter.
  `evictOffheap` - Evict offheap value flag.
Returns:
  `True` if entry could be evicted.
Throws:
  `IgniteCheckedException` - In case of error.

#### visitable

    public final boolean visitable(CacheEntryPredicate[] filter)

Parameters:
  `filter` - Entry filter.
Returns:
  `True` if entry is visitable.

#### deleted

    public final boolean deleted()

Note: this method works only for cache configured in ATOMIC mode or for cache that is data center replication target.

Specified by:
  `deleted` in interface `GridCacheEntryEx`
Returns:
  `True` if entry has been already deleted.

#### obsoleteOrDeleted

    public final boolean obsoleteOrDeleted()

Specified by:
  `obsoleteOrDeleted` in interface `GridCacheEntryEx`
Returns:
  `True` if entry is obsolete or deleted.
See Also:
  `GridCacheEntryEx.deleted()`

#### deletedUnlocked

    protected final boolean deletedUnlocked()

Returns:
  `True` if deleted.

#### deletedUnlocked

    protected final void deletedUnlocked(boolean deleted)

Parameters:
  `deleted` - `True` if deleted.

#### incrementMapPublicSize

    protected void incrementMapPublicSize()

Increments public size of map.

#### decrementMapPublicSize

    protected void decrementMapPublicSize()

Decrements public size of map.

#### mvccExtras

    @Nullable
    protected final @Nullable GridCacheMvcc mvccExtras()

Returns:
  MVCC.

#### mvccAllLocal

    @Nullable
    public final @Nullable List<GridCacheMvccCandidate> mvccAllLocal()

Returns:
  All MVCC local and non near candidates.

#### mvccExtras

    protected final void mvccExtras(@Nullable
                                    @Nullable GridCacheMvcc mvcc)

Parameters:
  `mvcc` - MVCC.

#### obsoleteVersionExtras

    @Nullable
    protected final @Nullable GridCacheVersion obsoleteVersionExtras()

Returns:
  Obsolete version.

#### checkOwnerChanged

    protected final void checkOwnerChanged(@Nullable
                                           @Nullable CacheLockCandidates prevOwners,
                                           @Nullable
                                           @Nullable CacheLockCandidates owners,
                                           CacheObject val)

Parameters:
  `prevOwners` - Previous owners.
  `owners` - Current owners.
  `val` - Entry value.

#### checkOwnerChanged

    protected final void checkOwnerChanged(@Nullable
                                           @Nullable CacheLockCandidates prevOwners,
                                           @Nullable
                                           @Nullable CacheLockCandidates owners,
                                           CacheObject val,
                                           boolean inThreadChain)

Parameters:
  `prevOwners` - Previous owners.
  `owners` - Current owners.
  `val` - Entry value.
  `inThreadChain` - `True` if called during thread chain checking.

#### checkThreadChain

    protected abstract void checkThreadChain(GridCacheMvccCandidate owner)

Parameters:
  `owner` - Starting candidate in the chain.

#### ttlExtras

    public long ttlExtras()

Returns:
  TTL.

#### expireTimeExtras

    public long expireTimeExtras()

Returns:
  Expire time.

#### ttlAndExpireTimeExtras

    protected void ttlAndExpireTimeExtras(long ttl,
                                          long expireTime)

Parameters:
  `ttl` - TTL.
  `expireTime` - Expire time.

#### txUnlock

    public void txUnlock(IgniteInternalTx tx)
                  throws GridCacheEntryRemovedException

Unlocks acquired lock.

Specified by:
  `txUnlock` in interface `GridCacheEntryEx`
Parameters:
  `tx` - Cache transaction.
Throws:
  `GridCacheEntryRemovedException` - If this entry has been removed from cache.

#### onUnlock

    public void onUnlock()

Calls `GridDhtLocalPartition.onUnlock()` for this entry's partition.

Specified by:
  `onUnlock` in interface `GridCacheEntryEx`

#### lockEntry

    public void lockEntry()

Locks entry to protect from concurrent access. Intended to be used instead of inherent java synchronization. This allows to separate locking from unlocking in time and/or code units.

Specified by:
  `lockEntry` in interface `GridCacheEntryEx`
See Also:
  `GridCacheEntryEx.unlockEntry().`

#### unlockEntry

    public void unlockEntry()

Unlocks entry previously locked by `GridCacheEntryEx.lockEntry()`.

Specified by:
  `unlockEntry` in interface `GridCacheEntryEx`

#### lockedByCurrentThread

    public boolean lockedByCurrentThread()

Tests whether the entry is locked currently.

Specified by:
  `lockedByCurrentThread` in interface `GridCacheEntryEx`
Returns:
  `True` if the entry is locked.
See Also:
  `GridCacheEntryEx.lockEntry().`, `GridCacheEntryEx.unlockEntry().`

#### touch

    public void touch()

Touch this entry in its context's eviction manager.

Specified by:
  `touch` in interface `GridCacheEntryEx`

#### equals

    public boolean equals(Object o)

Overrides:
  `equals` in class `Object`

#### hashCode

    public int hashCode()

Overrides:
  `hashCode` in class `Object`

#### toString

    public String toString()

Overrides:
  `toString` in class `Object`

#### mvccUpdateRowsWithPreloadInfo

    public GridCacheUpdateTxResult mvccUpdateRowsWithPreloadInfo(IgniteInternalTx tx,
                                                                 UUID affNodeId,
                                                                 AffinityTopologyVersion topVer,
                                                                 List<GridCacheEntryInfo> entries,
                                                                 GridCacheOperation op,
                                                                 MvccSnapshot mvccVer,
                                                                 IgniteUuid futId,
                                                                 int batchNum)
                                                          throws IgniteCheckedException,
                                                                 GridCacheEntryRemovedException

Specified by:
  `mvccUpdateRowsWithPreloadInfo` in interface `GridCacheEntryEx`
Parameters:
  `tx` - Transaction.
  `affNodeId` - Affinity node id.
  `topVer` - Topology version.
  `entries` - Entries.
  `op` - Cache operation.
  `mvccVer` - Mvcc version.
  `futId` - Future id.
  `batchNum` - Batch number.
Returns:
  Update result.
Throws:
  `IgniteCheckedException`
  `GridCacheEntryRemovedException`

#### mvccPreloadEntry

    public boolean mvccPreloadEntry(List<GridCacheMvccEntryInfo> entryHist)
                             throws IgniteCheckedException,
                                    GridCacheEntryRemovedException

Apply entry history if not exists.

Specified by:
  `mvccPreloadEntry` in interface `GridCacheEntryEx`
Parameters:
  `entryHist` - Entries.
Returns:
  `True` if initial value was set.
Throws:
  `IgniteCheckedException`
  `GridCacheEntryRemovedException`

${current.year} Copyright © Apache Software Foundation

Follow @ApacheIgnite

Ignite Database and Caching Platform | : ver. 2.8.0
Release Date | : February 27 2020