/** * @param entry Internal entry. * @param deserializeBinary Deserialize binary flag. * @return Public API entry. * @throws IgniteCheckedException If failed. * @throws GridCacheEntryRemovedException If entry removed. */ @Nullable private Cache.Entry<K, V> toCacheEntry(GridCacheEntryEx entry, boolean deserializeBinary) throws IgniteCheckedException, GridCacheEntryRemovedException { CacheObject val = entry.innerGet( /*ver*/null, /*tx*/null, /*readThrough*/false, /*metrics*/false, /*evt*/false, /*subjId*/null, /*transformClo*/null, /*taskName*/null, /*expiryPlc*/null, !deserializeBinary); if (val == null) return null; KeyCacheObject key = entry.key(); Object key0 = ctx.unwrapBinaryIfNeeded(key, !deserializeBinary, true); Object val0 = ctx.unwrapBinaryIfNeeded(val, !deserializeBinary, true); return new CacheEntryImpl<>((K)key0, (V)val0, entry.version()); }
ver = e.cached().version();
entry.version(), keepBinary, entry);
ver = entry.version();
misses = new LinkedHashMap<>(); misses.put(key, entry.version());
/** * @param e Entry. * @param cache Cache. * @throws Exception If failed. */ private void compareVersionWithPrimaryNode(CacheEntry<Integer, ?> e, IgniteCache<Integer, TestValue> cache) throws Exception { CacheConfiguration cfg = cache.getConfiguration(CacheConfiguration.class); if (cfg.getCacheMode() != LOCAL) { Ignite prim = primaryNode(e.getKey(), cache.getName()); GridCacheAdapter<Object, Object> cacheAdapter = ((IgniteKernal)prim).internalCache(cache.getName()); if (cfg.getNearConfiguration() != null) cacheAdapter = ((GridNearCacheAdapter)cacheAdapter).dht(); IgniteCacheObjectProcessor cacheObjects = cacheAdapter.context().cacheObjects(); CacheObjectContext cacheObjCtx = cacheAdapter.context().cacheObjectContext(); GridCacheEntryEx mapEntry = cacheAdapter.entryEx(cacheObjects.toCacheKeyObject( cacheObjCtx, cacheAdapter.context(), e.getKey(), true)); mapEntry.unswap(); assertNotNull("No entry for key: " + e.getKey(), mapEntry); assertEquals(mapEntry.version(), e.version()); } }
ver = txEntry.cached().version();
nearCached.innerReload(); nearCached.updateOrEvict(cached.version(), reloaded, cached.expireTime(),
GridCacheVersion ver = e.version(); Object val = e.rawGet().value(cx.context().cacheObjectContext(), true);
txEntry.cached().version(), keepBinary, txEntry.cached());
ver = cached.version();
/** * @param entry Internal entry. * @param deserializeBinary Deserialize binary flag. * @return Public API entry. * @throws IgniteCheckedException If failed. * @throws GridCacheEntryRemovedException If entry removed. */ @Nullable private Cache.Entry<K, V> toCacheEntry(GridCacheEntryEx entry, boolean deserializeBinary) throws IgniteCheckedException, GridCacheEntryRemovedException { CacheObject val = entry.innerGet( /*ver*/null, /*tx*/null, /*readThrough*/false, /*metrics*/false, /*evt*/false, /*subjId*/null, /*transformClo*/null, /*taskName*/null, /*expiryPlc*/null, !deserializeBinary, null); // TODO IGNITE-7371 if (val == null) return null; KeyCacheObject key = entry.key(); Object key0 = ctx.unwrapBinaryIfNeeded(key, !deserializeBinary, true); Object val0 = ctx.unwrapBinaryIfNeeded(val, !deserializeBinary, true); return new CacheEntryImpl<>((K)key0, (V)val0, entry.version()); }