ignite-1.5 Should not wait on preloader sync future for system caches callbacks.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/3492deae Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/3492deae Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/3492deae Branch: refs/heads/ignite-843-rc2 Commit: 3492deaec670f9870c58cdf608cf77282d184f00 Parents: f5e9918 Author: sboikov <sboi...@gridgain.com> Authored: Tue Dec 1 12:15:55 2015 +0300 Committer: sboikov <sboi...@gridgain.com> Committed: Tue Dec 1 12:19:14 2015 +0300 ---------------------------------------------------------------------- .../org/apache/ignite/internal/IgnitionEx.java | 4 +-- .../CacheDefaultBinaryAffinityKeyMapper.java | 19 +++++++--- .../processors/cache/GridCacheAdapter.java | 8 +---- .../processors/cache/GridCacheContext.java | 37 ++++++++++++-------- .../GridCacheDefaultAffinityKeyMapper.java | 9 ++++- .../processors/cache/GridCacheMapEntry.java | 6 +++- .../GridCachePartitionExchangeManager.java | 23 ++++-------- .../processors/cache/GridCachePreloader.java | 5 +++ .../cache/GridCachePreloaderAdapter.java | 7 +++- .../processors/cache/GridCacheProcessor.java | 14 +++++--- .../processors/cache/GridCacheProxyImpl.java | 12 +++++++ .../processors/cache/IgniteCacheProxy.java | 24 +++++++++++++ .../processors/cache/IgniteInternalCache.java | 9 +++++ .../dht/atomic/GridDhtAtomicCache.java | 4 +-- .../dht/preloader/GridDhtPartitionDemander.java | 17 +++++---- .../dht/preloader/GridDhtPreloader.java | 27 ++++++++++++++ .../CacheObjectBinaryProcessorImpl.java | 7 +++- .../cache/transactions/IgniteTxHandler.java | 2 +- .../communication/tcp/TcpCommunicationSpi.java | 6 ++-- .../CachePutEventListenerErrorSelfTest.java | 35 ++++++++++-------- .../cache/GridCacheClearSelfTest.java | 9 +++-- ...eAbstractDataStructuresFailoverSelfTest.java | 32 +++++++++++------ ...ObjectsCacheDataStructuresSelfTestSuite.java | 4 +++ ...BinaryObjectsCacheExpiryPolicyTestSuite.java | 4 +++ ...gniteBinaryObjectsCacheRestartTestSuite.java | 4 +++ .../IgniteBinaryObjectsCacheTestSuite2.java | 4 +++ .../IgniteBinaryObjectsCacheTestSuite3.java | 4 +++ .../IgniteBinaryObjectsCacheTestSuite4.java | 4 +++ ...IgniteBinaryObjectsComputeGridTestSuite.java | 4 +++ .../IgnitePortableCacheTestSuite.java | 1 - 30 files changed, 250 insertions(+), 95 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/main/java/org/apache/ignite/internal/IgnitionEx.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/IgnitionEx.java b/modules/core/src/main/java/org/apache/ignite/internal/IgnitionEx.java index 889b25c..be06f85 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/IgnitionEx.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/IgnitionEx.java @@ -2057,7 +2057,7 @@ public class IgnitionEx { cache.setWriteSynchronizationMode(FULL_SYNC); cache.setAffinity(new RendezvousAffinityFunction(false, 100)); cache.setNodeFilter(CacheConfiguration.ALL_NODES); - cache.setRebalanceOrder(-1);//Prior to user caches. + cache.setRebalanceOrder(-2); //Prior to user caches. return cache; } @@ -2078,7 +2078,7 @@ public class IgnitionEx { ccfg.setWriteSynchronizationMode(FULL_SYNC); ccfg.setCacheMode(cfg.getCacheMode()); ccfg.setNodeFilter(CacheConfiguration.ALL_NODES); - ccfg.setRebalanceOrder(-1);//Prior to user caches. + ccfg.setRebalanceOrder(-1); //Prior to user caches. if (cfg.getCacheMode() == PARTITIONED) ccfg.setBackups(cfg.getBackups()); http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheDefaultBinaryAffinityKeyMapper.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheDefaultBinaryAffinityKeyMapper.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheDefaultBinaryAffinityKeyMapper.java index efd38f7..d244a16 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheDefaultBinaryAffinityKeyMapper.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheDefaultBinaryAffinityKeyMapper.java @@ -17,6 +17,7 @@ package org.apache.ignite.internal.processors.cache; +import org.apache.ignite.Ignite; import org.apache.ignite.IgniteException; import org.apache.ignite.internal.IgniteKernal; import org.apache.ignite.internal.processors.cache.portable.CacheObjectBinaryProcessorImpl; @@ -30,12 +31,11 @@ public class CacheDefaultBinaryAffinityKeyMapper extends GridCacheDefaultAffinit /** */ private static final long serialVersionUID = 0L; + /** */ + private CacheObjectBinaryProcessorImpl proc; + /** {@inheritDoc} */ @Override public Object affinityKey(Object key) { - IgniteKernal kernal = (IgniteKernal)ignite; - - CacheObjectBinaryProcessorImpl proc = (CacheObjectBinaryProcessorImpl)kernal.context().cacheObjects(); - try { key = proc.toPortable(key); } @@ -48,4 +48,15 @@ public class CacheDefaultBinaryAffinityKeyMapper extends GridCacheDefaultAffinit else return super.affinityKey(key); } + + /** {@inheritDoc} */ + @Override public void ignite(Ignite ignite) { + super.ignite(ignite); + + if (ignite != null) { + IgniteKernal kernal = (IgniteKernal)ignite; + + proc = (CacheObjectBinaryProcessorImpl)kernal.context().cacheObjects(); + } + } } \ No newline at end of file http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java index b5b8690..f96954e 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java @@ -1288,13 +1288,7 @@ public abstract class GridCacheAdapter<K, V> implements IgniteInternalCache<K, V }); } - /** - * Gets value without waiting for toplogy changes. - * - * @param key Key. - * @return Value. - * @throws IgniteCheckedException If failed. - */ + /** {@inheritDoc} */ public V getTopologySafe(K key) throws IgniteCheckedException { String taskName = ctx.kernalContext().job().currentTaskName(); http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/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 6e5f958..5b4f22c 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 @@ -239,6 +239,9 @@ public class GridCacheContext<K, V> implements Externalizable { /** Deployment enabled flag for this specific cache */ private boolean depEnabled; + /** */ + private boolean deferredDelete; + /** * Empty constructor required for {@link Externalizable}. */ @@ -506,6 +509,9 @@ public class GridCacheContext<K, V> implements Externalizable { */ public void cache(GridCacheAdapter<K, V> cache) { this.cache = cache; + + deferredDelete = cache.isDht() || cache.isDhtAtomic() || cache.isColocated() || + (cache.isNear() && cache.configuration().getAtomicityMode() == ATOMIC); } /** @@ -568,21 +574,7 @@ public class GridCacheContext<K, V> implements Externalizable { * @return {@code True} if entries should not be deleted from cache immediately. */ public boolean deferredDelete() { - GridCacheAdapter<K, V> cache = this.cache; - - if (cache == null) - throw new IllegalStateException("Cache stopped: " + cacheName); - - return deferredDelete(cache); - } - - /** - * @param cache Cache. - * @return {@code True} if entries should not be deleted from cache immediately. - */ - public boolean deferredDelete(GridCacheAdapter<?, ?> cache) { - return cache.isDht() || cache.isDhtAtomic() || cache.isColocated() || - (cache.isNear() && cache.configuration().getAtomicityMode() == ATOMIC); + return deferredDelete; } /** @@ -1752,6 +1744,7 @@ public class GridCacheContext<K, V> implements Externalizable { * * @param o Object to unwrap. * @param keepPortable Keep portable flag. + * @param cpy Copy value flag. * @return Unwrapped object. */ public Object unwrapPortableIfNeeded(Object o, boolean keepPortable, boolean cpy) { @@ -1770,6 +1763,8 @@ public class GridCacheContext<K, V> implements Externalizable { * @return Cache object. */ @Nullable public CacheObject toCacheObject(@Nullable Object obj) { + assert validObjectForCache(obj) : obj; + return cacheObjects().toCacheObject(cacheObjCtx, obj, true); } @@ -1778,10 +1773,22 @@ public class GridCacheContext<K, V> implements Externalizable { * @return Cache key object. */ public KeyCacheObject toCacheKeyObject(Object obj) { + assert validObjectForCache(obj) : obj; + return cacheObjects().toCacheKeyObject(cacheObjCtx, obj, true); } /** + * @param obj Object. + * @return {@code False} if objects is not expected for cache. + */ + private boolean validObjectForCache(Object obj) { + return obj == null || + !CU.isUtilityCache(cacheName) || + ctx.marshallerContext().isSystemType(obj.getClass().getName()); + } + + /** * @param bytes Bytes. * @return Cache key object. * @throws IgniteCheckedException If failed. http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheDefaultAffinityKeyMapper.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheDefaultAffinityKeyMapper.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheDefaultAffinityKeyMapper.java index 6c5a8dc..5422bbd 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheDefaultAffinityKeyMapper.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheDefaultAffinityKeyMapper.java @@ -51,7 +51,6 @@ public class GridCacheDefaultAffinityKeyMapper implements AffinityKeyMapper { private static final long serialVersionUID = 0L; /** Injected ignite instance. */ - @IgniteInstanceResource protected transient Ignite ignite; /** Reflection cache. */ @@ -120,6 +119,14 @@ public class GridCacheDefaultAffinityKeyMapper implements AffinityKeyMapper { return key; } + /** + * @param ignite Ignite. + */ + @IgniteInstanceResource + public void ignite(Ignite ignite) { + this.ignite = ignite; + } + /** {@inheritDoc} */ @Override public void reset() { // No-op. http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/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 e1f2ade..aa06a24 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 @@ -1546,7 +1546,11 @@ public abstract class GridCacheMapEntry extends GridMetadataAwareAdapter impleme if (expiryPlc != null && !readFromStore && !cctx.putIfAbsentFilter(filter) && hasValueUnlocked()) updateTtl(expiryPlc); - return new T3<>(false, retval ? CU.value(old, cctx, false) : null, null); + Object val = retval ? + cctx.cacheObjectContext().unwrapPortableIfNeeded(CU.value(old, cctx, false), keepBinary, false) + : null; + + return new T3<>(false, val, null); } } http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java index 875a4e8..b13a5af 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java @@ -592,18 +592,6 @@ public class GridCachePartitionExchangeManager<K, V> extends GridCacheSharedMana } /** - * Gets maximum node version for the given topology version. - * - * @param topVer Topology version to get maximum node version for. - * @return Maximum node version. - */ - public IgniteProductVersion maximumNodeVersion(AffinityTopologyVersion topVer) { - IgnitePair<IgniteProductVersion> vers = nodeVers.get(topVer); - - return vers == null ? cctx.localNode().version() : vers.get2(); - } - - /** * @return {@code true} if entered to busy state. */ private boolean enterBusy() { @@ -759,7 +747,10 @@ public class GridCachePartitionExchangeManager<K, V> extends GridCacheSharedMana GridDhtPartitionFullMap locMap = cacheCtx.topology().partitionMap(true); if (useOldApi) { - locMap = new GridDhtPartitionFullMap(locMap.nodeId(), locMap.nodeOrder(), locMap.updateSequence(), locMap); + locMap = new GridDhtPartitionFullMap(locMap.nodeId(), + locMap.nodeOrder(), + locMap.updateSequence(), + locMap); } m.addFullPartitionsMap(cacheCtx.cacheId(), locMap); @@ -1137,9 +1128,8 @@ public class GridCachePartitionExchangeManager<K, V> extends GridCacheSharedMana dumpPendingObjects(); - for (GridCacheContext cacheCtx : cctx.cacheContexts()) { + for (GridCacheContext cacheCtx : cctx.cacheContexts()) cacheCtx.preloader().dumpDebugInfo(); - } } /** @@ -1405,9 +1395,8 @@ public class GridCachePartitionExchangeManager<K, V> extends GridCacheSharedMana List<String> waitList = new ArrayList<>(size - 1); for (List<Integer> cIds : orderMap.headMap(order).values()) { - for (Integer cId : cIds) { + for (Integer cId : cIds) waitList.add(cctx.cacheContext(cId).name()); - } } Callable<Boolean> r = cacheCtx.preloader().addAssignments( http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePreloader.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePreloader.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePreloader.java index 1658a89..8e1164b 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePreloader.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePreloader.java @@ -143,6 +143,11 @@ public interface GridCachePreloader { public IgniteInternalFuture<Object> request(Collection<KeyCacheObject> keys, AffinityTopologyVersion topVer); /** + * @return Future completed when rebalance on node start topology finished. + */ + public IgniteInternalFuture<?> initialRebalanceFuture(); + + /** * Force preload process. */ public void forcePreload(); http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePreloaderAdapter.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePreloaderAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePreloaderAdapter.java index 9c0e9f7..a1704fc 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePreloaderAdapter.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePreloaderAdapter.java @@ -119,7 +119,12 @@ public class GridCachePreloaderAdapter implements GridCachePreloader { /** {@inheritDoc} */ @Override public IgniteInternalFuture<Boolean> rebalanceFuture() { - return new GridFinishedFuture<>(true); + return finFut; + } + + /** {@inheritDoc} */ + @Override public IgniteInternalFuture<?> initialRebalanceFuture() { + return finFut; } /** {@inheritDoc} */ http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java index 6654a15..e53f186 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java @@ -796,7 +796,7 @@ public class GridCacheProcessor extends GridProcessorAdapter { if (!ctx.config().isDaemon()) ctx.marshallerContext().onMarshallerCacheStarted(ctx); - marshallerCache().context().preloader().syncFuture().listen(new CIX1<IgniteInternalFuture<?>>() { + marshallerCache().context().preloader().initialRebalanceFuture().listen(new CIX1<IgniteInternalFuture<?>>() { @Override public void applyx(IgniteInternalFuture<?> f) throws IgniteCheckedException { ctx.marshallerContext().onMarshallerCachePreloaded(ctx); } @@ -817,10 +817,16 @@ public class GridCacheProcessor extends GridProcessorAdapter { if (cfg.getRebalanceMode() == SYNC) { if (cfg.getCacheMode() == REPLICATED || (cfg.getCacheMode() == PARTITIONED && cfg.getRebalanceDelay() >= 0)) { - cache.preloader().syncFuture().get(); + boolean utilityCache = CU.isUtilityCache(cache.name()); - if (CU.isUtilityCache(cache.name())) - ctx.cacheObjects().onUtilityCacheStarted(); + if (utilityCache || CU.isMarshallerCache(cache.name())) { + cache.preloader().initialRebalanceFuture().get(); + + if (utilityCache) + ctx.cacheObjects().onUtilityCacheStarted(); + } + else + cache.preloader().syncFuture().get(); } } } http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProxyImpl.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProxyImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProxyImpl.java index e82c422..68e70c3 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProxyImpl.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProxyImpl.java @@ -304,6 +304,18 @@ public class GridCacheProxyImpl<K, V> implements IgniteInternalCache<K, V>, Exte } /** {@inheritDoc} */ + @Override public V getTopologySafe(K key) throws IgniteCheckedException { + CacheOperationContext prev = gate.enter(opCtx); + + try { + return delegate.getTopologySafe(key); + } + finally { + gate.leave(prev); + } + } + + /** {@inheritDoc} */ @Override public IgniteInternalFuture<V> getAsync(K key) { CacheOperationContext prev = gate.enter(opCtx); http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheProxy.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheProxy.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheProxy.java index 8a1cc3f..8fd4323 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheProxy.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheProxy.java @@ -1954,6 +1954,30 @@ public class IgniteCacheProxy<K, V> extends AsyncSupportAdapter<IgniteCache<K, V return new IgniteFutureImpl<>(ctx.preloader().syncFuture()); } + /** + * Gets value without waiting for toplogy changes. + * + * @param key Key. + * @return Value. + */ + public V getTopologySafe(K key) { + try { + GridCacheGateway<K, V> gate = this.gate; + + CacheOperationContext prev = onEnter(gate, opCtx); + + try { + return delegate.getTopologySafe(key); + } + finally { + onLeave(gate, prev); + } + } + catch (IgniteCheckedException e) { + throw cacheException(e); + } + } + /** {@inheritDoc} */ @Override public String toString() { return S.toString(IgniteCacheProxy.class, this); http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteInternalCache.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteInternalCache.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteInternalCache.java index 1055cf4..3150ea9 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteInternalCache.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteInternalCache.java @@ -1854,4 +1854,13 @@ public interface IgniteInternalCache<K, V> extends Iterable<Cache.Entry<K, V>> { * @return Future to be completed whenever loading completes. */ public IgniteInternalFuture<?> localLoadCacheAsync(@Nullable IgniteBiPredicate<K, V> p, @Nullable Object... args); + + /** + * Gets value without waiting for toplogy changes. + * + * @param key Key. + * @return Value. + * @throws IgniteCheckedException If failed. + */ + public V getTopologySafe(K key) throws IgniteCheckedException; } http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java index a49341b..d8ab62a 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicCache.java @@ -1378,7 +1378,7 @@ public class GridDhtAtomicCache<K, V> extends GridDhtCacheAdapter<K, V> { // Enqueue if necessary after locks release. if (deleted != null) { assert !deleted.isEmpty(); - assert ctx.deferredDelete(this) : this; + assert ctx.deferredDelete() : this; for (IgniteBiTuple<GridDhtCacheEntry, GridCacheVersion> e : deleted) ctx.onDeferredDelete(e.get1(), e.get2()); @@ -2430,7 +2430,7 @@ public class GridDhtAtomicCache<K, V> extends GridDhtCacheAdapter<K, V> { */ private void unlockEntries(Collection<GridDhtCacheEntry> locked, AffinityTopologyVersion topVer) { // Process deleted entries before locks release. - assert ctx.deferredDelete(this) : this; + assert ctx.deferredDelete() : this; // Entries to skip eviction manager notification for. // Enqueue entries while holding locks. http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java index 7ccb68e..20f12b6 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java @@ -145,9 +145,8 @@ public class GridDhtPartitionDemander { Map<Integer, Object> tops = new HashMap<>(); - for (int idx = 0; idx < cctx.gridConfig().getRebalanceThreadPoolSize(); idx++) { + for (int idx = 0; idx < cctx.gridConfig().getRebalanceThreadPoolSize(); idx++) tops.put(idx, GridCachePartitionExchangeManager.rebalanceTopic(idx)); - } rebalanceTopics = tops; } @@ -862,9 +861,8 @@ public class GridDhtPartitionDemander { U.log(log, "Cancelled rebalancing from all nodes [cache=" + cctx.name() + ", topology=" + topologyVersion()); - for (UUID nodeId : remaining.keySet()) { + for (UUID nodeId : remaining.keySet()) cleanupRemoteContexts(nodeId); - } remaining.clear(); @@ -959,9 +957,9 @@ public class GridDhtPartitionDemander { Collection<Integer> parts = remaining.get(nodeId).get2(); if (parts != null) { - boolean removed = parts.remove(p); + boolean rmvd = parts.remove(p); - assert removed; + assert rmvd; if (parts.isEmpty()) { U.log(log, "Completed " + ((remaining.size() == 1 ? "(final) " : "") + @@ -1039,6 +1037,11 @@ public class GridDhtPartitionDemander { onDone(!cancelled); } } + + /** {@inheritDoc} */ + public String toString() { + return S.toString(RebalanceFuture.class, this); + } } /** @@ -1109,10 +1112,12 @@ public class GridDhtPartitionDemander { /** Hide worker logger and use cache logger instead. */ private IgniteLogger log = GridDhtPartitionDemander.this.log; + /** */ private volatile RebalanceFuture fut; /** * @param id Worker ID. + * @param fut Rebalance future. */ private DemandWorker(int id, RebalanceFuture fut) { assert id >= 0; http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPreloader.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPreloader.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPreloader.java index 8e56c2d..3e3cee3 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPreloader.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPreloader.java @@ -107,6 +107,9 @@ public class GridDhtPreloader extends GridCachePreloaderAdapter { /** Start future. */ private GridFutureAdapter<Object> startFut; + /** Future completed when rebalance on start topology finished. */ + private final GridFutureAdapter<Object> initRebalanceFut; + /** Busy lock to prevent activities from accessing exchanger while it's stopping. */ private final ReadWriteLock busyLock = new ReentrantReadWriteLock(); @@ -155,6 +158,18 @@ public class GridDhtPreloader extends GridCachePreloaderAdapter { for (GridDhtAssignmentFetchFuture fut : pendingAssignmentFetchFuts.values()) fut.onNodeLeft(e.eventNode().id()); } + + if (!initRebalanceFut.isDone()) { + startFut.listen(new CI1<IgniteInternalFuture<?>>() { + @Override public void apply(IgniteInternalFuture<?> fut) { + cctx.closures().runLocalSafe(new Runnable() { + @Override public void run() { + initRebalanceFut.onDone(); + } + }); + } + }); + } } finally { leaveBusy(); @@ -171,6 +186,7 @@ public class GridDhtPreloader extends GridCachePreloaderAdapter { top = cctx.dht().topology(); startFut = new GridFutureAdapter<>(); + initRebalanceFut = new GridFutureAdapter<>(); } /** {@inheritDoc} */ @@ -209,6 +225,12 @@ public class GridDhtPreloader extends GridCachePreloaderAdapter { supplier = new GridDhtPartitionSupplier(cctx); demander = new GridDhtPartitionDemander(cctx, demandLock); + demander.rebalanceFuture().listen(new CI1<IgniteInternalFuture<Boolean>>() { + @Override public void apply(IgniteInternalFuture<Boolean> fut) { + initRebalanceFut.onDone(); + } + }); + supplier.start(); demander.start(); @@ -456,6 +478,11 @@ public class GridDhtPreloader extends GridCachePreloaderAdapter { return cctx.kernalContext().clientNode() ? new GridFinishedFuture<>(true) : demander.rebalanceFuture(); } + /** {@inheritDoc} */ + @Override public IgniteInternalFuture<?> initialRebalanceFuture() { + return cctx.kernalContext().clientNode() ? new GridFinishedFuture<>(true) : initRebalanceFut; + } + /** * @param topVer Requested topology version. * @param fut Future to add. http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/portable/CacheObjectBinaryProcessorImpl.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/portable/CacheObjectBinaryProcessorImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/portable/CacheObjectBinaryProcessorImpl.java index 5b70f2a..220a45a 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/portable/CacheObjectBinaryProcessorImpl.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/portable/CacheObjectBinaryProcessorImpl.java @@ -503,7 +503,12 @@ public class CacheObjectBinaryProcessorImpl extends IgniteCacheObjectProcessorIm if (clientNode) return clientMetaDataCache.get(typeId); else { - BinaryMetadata meta = metaDataCache.localPeek(new PortableMetadataKey(typeId)); + PortableMetadataKey key = new PortableMetadataKey(typeId); + + BinaryMetadata meta = metaDataCache.localPeek(key); + + if (meta == null && !metaDataCache.context().preloader().syncFuture().isDone()) + meta = metaDataCache.getTopologySafe(key); return meta != null ? meta.wrap(portableCtx) : null; } http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxHandler.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxHandler.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxHandler.java index 91ebfd3..b25baf8 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxHandler.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/transactions/IgniteTxHandler.java @@ -434,7 +434,7 @@ public class IgniteTxHandler { tx0.setRollbackOnly(); // Just in case. if (!X.hasCause(e, IgniteTxOptimisticCheckedException.class) && - !X.hasCause(e, IgniteFutureCancelledException.class)) + !X.hasCause(e, IgniteFutureCancelledException.class) && !ctx.kernalContext().isStopping()) U.error(log, "Failed to prepare DHT transaction: " + tx0, e); } } http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java b/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java index 9f8bae3..e5885a6 100644 --- a/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java +++ b/modules/core/src/main/java/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.java @@ -2303,17 +2303,15 @@ public class TcpCommunicationSpi extends IgniteSpiAdapter if (sockSndBuf > 0) ch.socket().setSendBufferSize(sockSndBuf); - GridNioRecoveryDescriptor recoveryDesc = recoveryDescriptor(node); - if (getSpiContext().node(node.id()) == null) { - recoveryDesc.release(); - U.closeQuiet(ch); throw new ClusterTopologyCheckedException("Failed to send message " + "(node left topology): " + node); } + GridNioRecoveryDescriptor recoveryDesc = recoveryDescriptor(node); + if (!recoveryDesc.reserve()) { U.closeQuiet(ch); http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CachePutEventListenerErrorSelfTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CachePutEventListenerErrorSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CachePutEventListenerErrorSelfTest.java index 0e0e521..bf8f615 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CachePutEventListenerErrorSelfTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CachePutEventListenerErrorSelfTest.java @@ -64,21 +64,26 @@ public class CachePutEventListenerErrorSelfTest extends GridCommonAbstractTest { Ignition.setClientMode(true); - Ignite ignite = startGrid("client"); - - ignite.events().remoteListen( - new IgniteBiPredicate<UUID, Event>() { - @Override public boolean apply(UUID uuid, Event evt) { - return true; - } - }, - new IgnitePredicate<Event>() { - @Override public boolean apply(Event evt) { - throw new NoClassDefFoundError("XXX"); - } - }, - EventType.EVT_CACHE_OBJECT_PUT - ); + try { + Ignite ignite = startGrid("client"); + + ignite.events().remoteListen( + new IgniteBiPredicate<UUID, Event>() { + @Override public boolean apply(UUID uuid, Event evt) { + return true; + } + }, + new IgnitePredicate<Event>() { + @Override public boolean apply(Event evt) { + throw new NoClassDefFoundError("XXX"); + } + }, + EventType.EVT_CACHE_OBJECT_PUT + ); + } + finally { + Ignition.setClientMode(false); + } } /** {@inheritDoc} */ http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheClearSelfTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheClearSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheClearSelfTest.java index 5e14f14..67316b4 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheClearSelfTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheClearSelfTest.java @@ -61,8 +61,13 @@ public class GridCacheClearSelfTest extends GridCommonAbstractTest { Ignition.setClientMode(true); - startGrid("client1"); - startGrid("client2"); + try { + startGrid("client1"); + startGrid("client2"); + } + finally { + Ignition.setClientMode(false); + } } /** {@inheritDoc} */ http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/GridCacheAbstractDataStructuresFailoverSelfTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/GridCacheAbstractDataStructuresFailoverSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/GridCacheAbstractDataStructuresFailoverSelfTest.java index 4ee200b..2751de1 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/GridCacheAbstractDataStructuresFailoverSelfTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/datastructures/GridCacheAbstractDataStructuresFailoverSelfTest.java @@ -446,6 +446,8 @@ public abstract class GridCacheAbstractDataStructuresFailoverSelfTest extends Ig String name = UUID.randomUUID().toString(); try { + log.info("Start node: " + name); + Ignite g = startGrid(name); assert g.semaphore(STRUCTURE_NAME, 10, false, false) != null; @@ -502,6 +504,8 @@ public abstract class GridCacheAbstractDataStructuresFailoverSelfTest extends Ig String name = UUID.randomUUID().toString(); try { + log.info("Start node: " + name); + Ignite g = startGrid(name); final IgniteSemaphore sem = g.semaphore(STRUCTURE_NAME, TOP_CHANGE_CNT, true, true); @@ -510,14 +514,12 @@ public abstract class GridCacheAbstractDataStructuresFailoverSelfTest extends Ig sem.acquire(); - if (i == TOP_CHANGE_CNT - 1) { + if (i == TOP_CHANGE_CNT - 1) sem.release(); - } } finally { - if (i != TOP_CHANGE_CNT - 1) { + if (i != TOP_CHANGE_CNT - 1) stopGrid(name); - } } } } @@ -572,6 +574,8 @@ public abstract class GridCacheAbstractDataStructuresFailoverSelfTest extends Ig names.add(name); + log.info("Start node: " + name); + Ignite g = startGrid(name); final IgniteSemaphore sem = g.semaphore(STRUCTURE_NAME, TOP_CHANGE_CNT, true, true); @@ -580,9 +584,8 @@ public abstract class GridCacheAbstractDataStructuresFailoverSelfTest extends Ig sem.acquire(); - if (i == TOP_CHANGE_CNT - 1) { + if (i == TOP_CHANGE_CNT - 1) sem.release(); - } } } finally { @@ -639,21 +642,20 @@ public abstract class GridCacheAbstractDataStructuresFailoverSelfTest extends Ig String name = UUID.randomUUID().toString(); try { + log.info("Start node: " + name); + Ignite g = startGrid(name); final IgniteSemaphore sem = g.semaphore(STRUCTURE_NAME, TOP_CHANGE_CNT, true, true); assertNotNull(sem); - if (i != 1) { + if (i != 1) sem.acquire(); - } - } finally { - if (i != 1) { + if (i != 1) stopGrid(name); - } } } @@ -846,6 +848,8 @@ public abstract class GridCacheAbstractDataStructuresFailoverSelfTest extends Ig int id = idx.getAndIncrement(); try { + log.info("Start node: " + id); + startGrid(id); Thread.sleep(1000); @@ -1008,6 +1012,8 @@ public abstract class GridCacheAbstractDataStructuresFailoverSelfTest extends Ig String name = UUID.randomUUID().toString(); try { + log.info("Start node: " + name); + Ignite g = startGrid(name); callback.apply(g); @@ -1055,6 +1061,8 @@ public abstract class GridCacheAbstractDataStructuresFailoverSelfTest extends Ig String name = UUID.randomUUID().toString(); + log.info("Start node: " + name); + Ignite g = startGrid(name); names.add(name); @@ -1144,6 +1152,8 @@ public abstract class GridCacheAbstractDataStructuresFailoverSelfTest extends Ig startedNodes.add(name); + log.info("Start node: " + name); + Ignite g = startGrid(name); callback.apply(g); http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheDataStructuresSelfTestSuite.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheDataStructuresSelfTestSuite.java b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheDataStructuresSelfTestSuite.java index 1a77518..d18e3e3 100644 --- a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheDataStructuresSelfTestSuite.java +++ b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheDataStructuresSelfTestSuite.java @@ -25,6 +25,10 @@ import org.apache.ignite.testframework.config.GridTestProperties; * */ public class IgniteBinaryObjectsCacheDataStructuresSelfTestSuite { + /** + * @return Test suite. + * @throws Exception If failed. + */ public static TestSuite suite() throws Exception { GridTestProperties.setProperty(GridTestProperties.MARSH_CLASS_NAME, BinaryMarshaller.class.getName()); http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheExpiryPolicyTestSuite.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheExpiryPolicyTestSuite.java b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheExpiryPolicyTestSuite.java index b5bd4de..8391c54 100644 --- a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheExpiryPolicyTestSuite.java +++ b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheExpiryPolicyTestSuite.java @@ -26,6 +26,10 @@ import org.apache.ignite.testframework.config.GridTestProperties; * */ public class IgniteBinaryObjectsCacheExpiryPolicyTestSuite { + /** + * @return Test suite. + * @throws Exception If failed. + */ public static TestSuite suite() throws Exception { GridTestProperties.setProperty(GridTestProperties.MARSH_CLASS_NAME, BinaryMarshaller.class.getName()); http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheRestartTestSuite.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheRestartTestSuite.java b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheRestartTestSuite.java index 0ef9446..a739188 100644 --- a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheRestartTestSuite.java +++ b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheRestartTestSuite.java @@ -25,6 +25,10 @@ import org.apache.ignite.testframework.config.GridTestProperties; * */ public class IgniteBinaryObjectsCacheRestartTestSuite { + /** + * @return Test suite. + * @throws Exception If failed. + */ public static TestSuite suite() throws Exception { GridTestProperties.setProperty(GridTestProperties.MARSH_CLASS_NAME, BinaryMarshaller.class.getName()); http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheTestSuite2.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheTestSuite2.java b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheTestSuite2.java index e8064e7..e5fa314 100644 --- a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheTestSuite2.java +++ b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheTestSuite2.java @@ -25,6 +25,10 @@ import org.apache.ignite.testframework.config.GridTestProperties; * */ public class IgniteBinaryObjectsCacheTestSuite2 { + /** + * @return Test suite. + * @throws Exception If failed. + */ public static TestSuite suite() throws Exception { GridTestProperties.setProperty(GridTestProperties.MARSH_CLASS_NAME, BinaryMarshaller.class.getName()); http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheTestSuite3.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheTestSuite3.java b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheTestSuite3.java index 736a862..2778c97 100644 --- a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheTestSuite3.java +++ b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheTestSuite3.java @@ -25,6 +25,10 @@ import org.apache.ignite.testframework.config.GridTestProperties; * */ public class IgniteBinaryObjectsCacheTestSuite3 { + /** + * @return Test suite. + * @throws Exception If failed. + */ public static TestSuite suite() throws Exception { GridTestProperties.setProperty(GridTestProperties.MARSH_CLASS_NAME, BinaryMarshaller.class.getName()); http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheTestSuite4.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheTestSuite4.java b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheTestSuite4.java index 4f88e0a..74c8e61 100644 --- a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheTestSuite4.java +++ b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsCacheTestSuite4.java @@ -25,6 +25,10 @@ import org.apache.ignite.testframework.config.GridTestProperties; * */ public class IgniteBinaryObjectsCacheTestSuite4 { + /** + * @return Test suite. + * @throws Exception If failed. + */ public static TestSuite suite() throws Exception { GridTestProperties.setProperty(GridTestProperties.MARSH_CLASS_NAME, BinaryMarshaller.class.getName()); http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsComputeGridTestSuite.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsComputeGridTestSuite.java b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsComputeGridTestSuite.java index 878f59f..a53187c 100644 --- a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsComputeGridTestSuite.java +++ b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteBinaryObjectsComputeGridTestSuite.java @@ -25,6 +25,10 @@ import org.apache.ignite.testframework.config.GridTestProperties; * */ public class IgniteBinaryObjectsComputeGridTestSuite { + /** + * @return Test suite. + * @throws Exception If failed. + */ public static TestSuite suite() throws Exception { GridTestProperties.setProperty(GridTestProperties.MARSH_CLASS_NAME, BinaryMarshaller.class.getName()); http://git-wip-us.apache.org/repos/asf/ignite/blob/3492deae/modules/core/src/test/java/org/apache/ignite/testsuites/IgnitePortableCacheTestSuite.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/testsuites/IgnitePortableCacheTestSuite.java b/modules/core/src/test/java/org/apache/ignite/testsuites/IgnitePortableCacheTestSuite.java index 6e34a98..574ddeb 100644 --- a/modules/core/src/test/java/org/apache/ignite/testsuites/IgnitePortableCacheTestSuite.java +++ b/modules/core/src/test/java/org/apache/ignite/testsuites/IgnitePortableCacheTestSuite.java @@ -76,7 +76,6 @@ public class IgnitePortableCacheTestSuite extends TestSuite { ignoredTests.add(GridCacheMvccSelfTest.class); suite.addTest(IgniteCacheTestSuite.suite(ignoredTests)); - suite.addTest(IgniteCacheExpiryPolicyTestSuite.suite()); suite.addTestSuite(GridCacheMemoryModePortableSelfTest.class); suite.addTestSuite(GridCacheOffHeapTieredEvictionAtomicPortableSelfTest.class);