Repository: incubator-ignite Updated Branches: refs/heads/ignite-51 a06c15043 -> 431897f7f
# ignite-51 Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/431897f7 Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/431897f7 Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/431897f7 Branch: refs/heads/ignite-51 Commit: 431897f7fc5aacb6118a1b00ad59c6d4aee1921a Parents: a06c150 Author: sboikov <[email protected]> Authored: Thu Mar 5 20:08:33 2015 +0300 Committer: sboikov <[email protected]> Committed: Thu Mar 5 23:10:41 2015 +0300 ---------------------------------------------------------------------- .../cache/CacheEntryPredicateAdapter.java | 33 +--------- .../cache/CacheEntryPredicateContainsValue.java | 13 ++-- .../cache/CacheEntryPredicateHasValue.java | 2 +- .../cache/CacheEntryPredicateNoValue.java | 2 +- .../processors/cache/CacheInvokeEntry.java | 16 +++-- .../processors/cache/GridCacheContext.java | 4 +- .../processors/cache/GridCacheEntryEx.java | 9 ++- .../processors/cache/GridCacheMapEntry.java | 69 ++++++++++---------- .../processors/cache/GridCacheUtils.java | 2 +- .../processors/cache/UserCacheObjectImpl.java | 7 +- .../cache/UserKeyCacheObjectImpl.java | 9 ++- .../transactions/IgniteTxLocalAdapter.java | 22 +++---- .../datastructures/DataStructuresProcessor.java | 17 ++--- .../IgniteCacheObjectProcessorAdapter.java | 2 +- .../processors/cache/GridCacheTestEntryEx.java | 10 +-- 15 files changed, 95 insertions(+), 122 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/431897f7/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateAdapter.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateAdapter.java index 3214e10..ef4cd3b 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateAdapter.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateAdapter.java @@ -18,16 +18,14 @@ package org.apache.ignite.internal.processors.cache; import org.apache.ignite.*; -import org.apache.ignite.internal.processors.cache.transactions.*; import org.apache.ignite.plugin.extensions.communication.*; -import java.io.*; import java.nio.*; /** * */ -public abstract class CacheEntryPredicateAdapter implements CacheEntryPredicate, Serializable { +public abstract class CacheEntryPredicateAdapter implements CacheEntryPredicate { /** {@inheritDoc} */ @Override public void finishUnmarshal(GridCacheContext ctx, ClassLoader ldr) throws IgniteCheckedException { // No-op. @@ -65,33 +63,4 @@ public abstract class CacheEntryPredicateAdapter implements CacheEntryPredicate, return false; } - - /** - * @param e Entry. - * @return {@code True} if given entry has value. - */ - protected boolean hasValue(GridCacheEntryEx e) { - try { - if (e.hasValue()) - return true; - - GridCacheContext cctx = e.context(); - - if (cctx.transactional()) { - IgniteInternalTx tx = cctx.tm().userTx(); - - if (tx != null) - return tx.peek(cctx, false, e.key(), null) != null; - } - - return false; - } - catch (GridCacheFilterFailedException err) { - assert false; - - err.printStackTrace(); - - return false; - } - } } http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/431897f7/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateContainsValue.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateContainsValue.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateContainsValue.java index 0765930..ec23735 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateContainsValue.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateContainsValue.java @@ -51,16 +51,11 @@ public class CacheEntryPredicateContainsValue implements CacheEntryPredicate { } /** {@inheritDoc} */ - @Override public boolean apply(GridCacheEntryEx entry) { - try { - CacheObject val = entry.rawGetOrUnmarshal(true); + @Override public boolean apply(GridCacheEntryEx e) { + CacheObject val = e.peekVisibleValue(); - return F.eq(this.val.value(entry.context().cacheObjectContext(), false), - CU.value(val, entry.context(), false)); - } - catch (IgniteCheckedException e) { - throw new IgniteException(e); - } + return F.eq(this.val.value(e.context().cacheObjectContext(), false), + CU.value(val, e.context(), false)); } /** {@inheritDoc} */ http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/431897f7/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateHasValue.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateHasValue.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateHasValue.java index 3b921ca..fe28f92 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateHasValue.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateHasValue.java @@ -23,6 +23,6 @@ package org.apache.ignite.internal.processors.cache; public class CacheEntryPredicateHasValue extends CacheEntryPredicateAdapter { /** {@inheritDoc} */ @Override public boolean apply(GridCacheEntryEx e) { - return hasValue(e); + return e.peekVisibleValue() != null; } } http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/431897f7/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateNoValue.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateNoValue.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateNoValue.java index 13f022d..f32f345 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateNoValue.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheEntryPredicateNoValue.java @@ -23,6 +23,6 @@ package org.apache.ignite.internal.processors.cache; public class CacheEntryPredicateNoValue extends CacheEntryPredicateAdapter { /** {@inheritDoc} */ @Override public boolean apply(GridCacheEntryEx e) { - return !hasValue(e); + return e.peekVisibleValue() == null; } } http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/431897f7/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheInvokeEntry.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheInvokeEntry.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheInvokeEntry.java index a0297a9..2817748 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheInvokeEntry.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheInvokeEntry.java @@ -18,6 +18,7 @@ package org.apache.ignite.internal.processors.cache; import org.apache.ignite.internal.util.typedef.internal.*; +import org.jetbrains.annotations.*; import javax.cache.processor.*; @@ -39,7 +40,9 @@ public class CacheInvokeEntry<K, V> extends CacheLazyEntry<K, V> implements Muta * @param keyObj Key cache object. * @param valObj Cache object value. */ - public CacheInvokeEntry(GridCacheContext cctx, KeyCacheObject keyObj, CacheObject valObj) { + public CacheInvokeEntry(GridCacheContext cctx, + KeyCacheObject keyObj, + @Nullable CacheObject valObj) { super(cctx, keyObj, valObj); this.hadVal = valObj != null; @@ -47,14 +50,17 @@ public class CacheInvokeEntry<K, V> extends CacheLazyEntry<K, V> implements Muta /** * @param ctx Cache context. - * @param keyObject Key cache object. + * @param keyObj Key cache object. * @param key Key value. * @param valObj Value cache object. * @param val Value. */ - public CacheInvokeEntry(GridCacheContext<K, V> ctx, KeyCacheObject keyObject, K key, CacheObject valObj, - V val) { - super(ctx, keyObject, key, valObj, val); + public CacheInvokeEntry(GridCacheContext<K, V> ctx, + KeyCacheObject keyObj, + @Nullable K key, + @Nullable CacheObject valObj, + @Nullable V val) { + super(ctx, keyObj, key, valObj, val); this.hadVal = valObj != null || val != null; } http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/431897f7/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java index 78c0800..410cd0e 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheContext.java @@ -1788,7 +1788,7 @@ public class GridCacheContext<K, V> implements Externalizable { if (transferOnly) return new KeyCacheObjectTransferImpl(bytes); - obj = ctx.portable().unmarshal(cacheObjCtx, bytes, deploy().globalLoader()); + obj = ctx.portable().unmarshal(cacheObjCtx, bytes, deploy().localLoader()); } return ctx.portable().toCacheKeyObject(cacheObjCtx, obj, bytes); @@ -1812,7 +1812,7 @@ public class GridCacheContext<K, V> implements Externalizable { if (ldr == null) return null; - return new CacheObjectImpl(portable().unmarshal(cacheObjCtx, bytes, ldr), bytes); + return ctx.portable().toCacheObject(cacheObjCtx, ctx.portable().unmarshal(cacheObjCtx, bytes, ldr), bytes); } /** http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/431897f7/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java index 5fb1346..75541eb 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheEntryEx.java @@ -148,12 +148,11 @@ public interface GridCacheEntryEx { public <K, V> Cache.Entry<K, V> wrapLazyValue(); /** - * Wraps this map entry into cache entry for filter evaluation inside entry lock. + * Peeks value provided to public API entries and to entry filters. * - * @return Wrapped entry. - * @throws IgniteCheckedException If failed. + * @return Value. */ - public <K, V> Cache.Entry<K, V> wrapFilterLocked() throws IgniteCheckedException; + @Nullable public CacheObject peekVisibleValue(); /** * @return Entry which is safe to pass into eviction policy. @@ -622,7 +621,7 @@ public interface GridCacheEntryEx { * @throws GridCacheFilterFailedException If filter failed. */ @SuppressWarnings({"RedundantTypeArguments"}) - @Nullable public <K, V> GridTuple<CacheObject> peek0(boolean failFast, + @Nullable public GridTuple<CacheObject> peek0(boolean failFast, GridCachePeekMode mode, @Nullable CacheEntryPredicate[] filter, @Nullable IgniteInternalTx tx) http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/431897f7/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java index 227ccf7..ddf3303 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java @@ -2855,7 +2855,7 @@ public abstract class GridCacheMapEntry implements GridCacheEntryEx { * @throws GridCacheFilterFailedException If filter failed. */ @SuppressWarnings({"RedundantTypeArguments"}) - @Nullable @Override public <K, V> GridTuple<CacheObject> peek0(boolean failFast, GridCachePeekMode mode, + @Nullable @Override public GridTuple<CacheObject> peek0(boolean failFast, GridCachePeekMode mode, CacheEntryPredicate[] filter, @Nullable IgniteInternalTx tx) throws GridCacheEntryRemovedException, GridCacheFilterFailedException, IgniteCheckedException { assert tx == null || tx.local(); @@ -3763,12 +3763,38 @@ public abstract class GridCacheMapEntry implements GridCacheEntryEx { return new LazyValueEntry(key); } - /** {@inheritDoc} */ - @Override public <K, V> Cache.Entry<K, V> wrapFilterLocked() throws IgniteCheckedException { - CacheObject val = rawGetOrUnmarshal(true); + /** {@inheritDoc} */ + @Nullable public CacheObject peekVisibleValue() { + try { + IgniteInternalTx tx = cctx.tm().userTx(); + + if (tx != null) { + GridTuple<CacheObject> peek = tx.peek(cctx, false, key, null); + + if (peek != null) + return peek.get(); + } - return new CacheEntryImpl<>(key.<K>value(cctx.cacheObjectContext(), false), - CU.<V>value(val, cctx, false)); + if (detached()) + return rawGet(); + + for (;;) { + GridCacheEntryEx e = cctx.cache().peekEx(key); + + if (e == null) + return null; + + try { + return e.peek(GridCachePeekMode.GLOBAL, CU.empty0()); + } + catch (GridCacheEntryRemovedException ignored) { + // No-op. + } + } + } + catch (GridCacheFilterFailedException ignored) { + throw new IgniteException("Should never happen."); + } } /** {@inheritDoc} */ @@ -4313,36 +4339,7 @@ public abstract class GridCacheMapEntry implements GridCacheEntryEx { /** {@inheritDoc} */ @SuppressWarnings("unchecked") @Override public V getValue() { - try { - IgniteInternalTx tx = cctx.tm().userTx(); - - if (tx != null) { - GridTuple<CacheObject> peek = tx.peek(cctx, false, key, null); - - if (peek != null) - return CU.value(peek.get(), cctx, false); - } - - if (detached()) - return CU.value(rawGet(), cctx, false); - - for (;;) { - GridCacheEntryEx e = cctx.cache().peekEx(key); - - if (e == null) - return null; - - try { - return CU.value(e.peek(GridCachePeekMode.GLOBAL, CU.empty0()), cctx, false); - } - catch (GridCacheEntryRemovedException ignored) { - // No-op. - } - } - } - catch (GridCacheFilterFailedException ignored) { - throw new IgniteException("Should never happen."); - } + return CU.value(peekVisibleValue(), cctx, true); } /** {@inheritDoc} */ http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/431897f7/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java index 7700fa4..16bc56f 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUtils.java @@ -904,7 +904,7 @@ public class GridCacheUtils { try { Object val = CU.value(e.rawGetOrUnmarshal(true), e.context(), false); - return val != null && + return val == null || valType.isAssignableFrom(val.getClass()) && keyType.isAssignableFrom(e.key().value(e.context().cacheObjectContext(), false).getClass()); } http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/431897f7/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/UserCacheObjectImpl.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/UserCacheObjectImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/UserCacheObjectImpl.java index 8026995..b7e90bb 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/UserCacheObjectImpl.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/UserCacheObjectImpl.java @@ -18,7 +18,7 @@ package org.apache.ignite.internal.processors.cache; import org.apache.ignite.*; -import org.apache.ignite.internal.util.typedef.internal.*; +import org.jetbrains.annotations.*; import java.util.*; @@ -41,6 +41,11 @@ public class UserCacheObjectImpl extends CacheObjectImpl { } /** {@inheritDoc} */ + @Nullable @Override public <T> T value(CacheObjectContext ctx, boolean cpy) { + return super.value(ctx, false); + } + + /** {@inheritDoc} */ @Override public CacheObject prepareForCache(CacheObjectContext ctx) { if (needCopy(ctx)) { if (val instanceof byte[]) { http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/431897f7/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/UserKeyCacheObjectImpl.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/UserKeyCacheObjectImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/UserKeyCacheObjectImpl.java index d052f94..e9fb75b 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/UserKeyCacheObjectImpl.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/UserKeyCacheObjectImpl.java @@ -18,7 +18,7 @@ package org.apache.ignite.internal.processors.cache; import org.apache.ignite.*; -import org.apache.ignite.internal.util.typedef.internal.*; +import org.jetbrains.annotations.*; /** * Cache object wrapping key provided by user. Need to be copied before stored in cache. @@ -40,6 +40,11 @@ public class UserKeyCacheObjectImpl extends KeyCacheObjectImpl { } /** {@inheritDoc} */ + @Nullable @Override public <T> T value(CacheObjectContext ctx, boolean cpy) { + return super.value(ctx, false); + } + + /** {@inheritDoc} */ @Override public byte[] valueBytes(CacheObjectContext ctx) throws IgniteCheckedException { if (valBytes == null) valBytes = ctx.processor().marshal(ctx, val); @@ -56,7 +61,7 @@ public class UserKeyCacheObjectImpl extends KeyCacheObjectImpl { if (needCopy(ctx)) { Object val = ctx.processor().unmarshal(ctx, valBytes, - ctx.kernalContext().config().getClassLoader()); + this.val.getClass().getClassLoader()); return new KeyCacheObjectImpl(val, valBytes); } http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/431897f7/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalAdapter.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalAdapter.java index d65618a..35673c3 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalAdapter.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxLocalAdapter.java @@ -2459,37 +2459,37 @@ public abstract class IgniteTxLocalAdapter extends IgniteTxAdapter private void addInvokeResult(IgniteTxEntry txEntry, CacheObject cacheVal, GridCacheReturn<?> ret) { GridCacheContext ctx = txEntry.context(); - Object keyVal = null; - Object val = null; + Object key0 = null; + Object val0 = null; try { Object res = null; for (T2<EntryProcessor<Object, Object, Object>, Object[]> t : txEntry.entryProcessors()) { CacheInvokeEntry<Object, Object> invokeEntry = - new CacheInvokeEntry(txEntry.context(), txEntry.key(), keyVal, cacheVal, val); + new CacheInvokeEntry(txEntry.context(), txEntry.key(), key0, cacheVal, val0); EntryProcessor<Object, Object, ?> entryProcessor = t.get1(); res = entryProcessor.process(invokeEntry, t.get2()); - val = invokeEntry.value(); + val0 = invokeEntry.value(); - keyVal = invokeEntry.key(); + key0 = invokeEntry.key(); } if (res != null) { - if (keyVal == null) - keyVal = txEntry.key().value(ctx.cacheObjectContext(), true); + if (key0 == null) + key0 = txEntry.key().value(ctx.cacheObjectContext(), true); - ret.addEntryProcessResult(keyVal, new CacheInvokeResult<>(res)); + ret.addEntryProcessResult(key0, new CacheInvokeResult<>(res)); } } catch (Exception e) { - if (keyVal == null) - keyVal = txEntry.key().value(ctx.cacheObjectContext(), true); + if (key0 == null) + key0 = txEntry.key().value(ctx.cacheObjectContext(), true); - ret.addEntryProcessResult(keyVal, new CacheInvokeResult(e)); + ret.addEntryProcessResult(key0, new CacheInvokeResult(e)); } } http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/431897f7/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/DataStructuresProcessor.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/DataStructuresProcessor.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/DataStructuresProcessor.java index 6befea6..b2475c6 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/DataStructuresProcessor.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/datastructures/DataStructuresProcessor.java @@ -118,22 +118,17 @@ public final class DataStructuresProcessor extends GridProcessorAdapter { assert atomicsCache != null; - dsView = atomicsCache.projection(GridCacheInternal.class, GridCacheInternal.class).flagsOn(CLONE); + dsView = atomicsCache.flagsOn(CLONE); - cntDownLatchView = atomicsCache.projection - (GridCacheInternalKey.class, GridCacheCountDownLatchValue.class).flagsOn(CLONE); + cntDownLatchView = atomicsCache.flagsOn(CLONE); - atomicLongView = atomicsCache.projection - (GridCacheInternalKey.class, GridCacheAtomicLongValue.class).flagsOn(CLONE); + atomicLongView = atomicsCache.flagsOn(CLONE); - atomicRefView = atomicsCache.projection - (GridCacheInternalKey.class, GridCacheAtomicReferenceValue.class).flagsOn(CLONE); + atomicRefView = atomicsCache.flagsOn(CLONE); - atomicStampedView = atomicsCache.projection - (GridCacheInternalKey.class, GridCacheAtomicStampedValue.class).flagsOn(CLONE); + atomicStampedView = atomicsCache.flagsOn(CLONE); - seqView = atomicsCache.projection - (GridCacheInternalKey.class, GridCacheAtomicSequenceValue.class).flagsOn(CLONE); + seqView = atomicsCache.flagsOn(CLONE); dsCacheCtx = ctx.cache().internalCache(CU.ATOMICS_CACHE_NAME).context(); } http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/431897f7/modules/core/src/main/java/org/apache/ignite/internal/processors/portable/IgniteCacheObjectProcessorAdapter.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/portable/IgniteCacheObjectProcessorAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/portable/IgniteCacheObjectProcessorAdapter.java index 9500571..1f5ee40 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/portable/IgniteCacheObjectProcessorAdapter.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/portable/IgniteCacheObjectProcessorAdapter.java @@ -126,7 +126,7 @@ public abstract class IgniteCacheObjectProcessorAdapter extends GridProcessorAda return new CacheObjectImpl(ctx.marshaller().unmarshal(bytes, ldr), bytes); } else - return new CacheObjectImpl(ctx.marshaller().unmarshal(bytes, U.gridClassLoader()), bytes); + return new CacheObjectImpl(ctx.marshaller().unmarshal(bytes, ctx.deploy().localLoader()), bytes); } /** {@inheritDoc} */ http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/431897f7/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTestEntryEx.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTestEntryEx.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTestEntryEx.java index 264542f..fdc17d7 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTestEntryEx.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheTestEntryEx.java @@ -357,9 +357,11 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr return null; } - /** {@inheritDoc} */ - @Override public Cache.Entry wrapFilterLocked() { - assert false; return null; + /** @inheritDoc */ + @Nullable @Override public CacheObject peekVisibleValue() { + assert false; + + return null; } /** @inheritDoc */ @@ -617,7 +619,7 @@ public class GridCacheTestEntryEx extends GridMetadataAwareAdapter implements Gr } /** @inheritDoc */ - @Override public <K, V> GridTuple<CacheObject> peek0(boolean failFast, GridCachePeekMode mode, + @Override public GridTuple<CacheObject> peek0(boolean failFast, GridCachePeekMode mode, CacheEntryPredicate[] filter, IgniteInternalTx tx) throws GridCacheEntryRemovedException, GridCacheFilterFailedException, IgniteCheckedException { return F.t(val);
