Return-Path: X-Original-To: apmail-ignite-commits-archive@minotaur.apache.org Delivered-To: apmail-ignite-commits-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 57F7017E6B for ; Fri, 10 Jul 2015 13:56:57 +0000 (UTC) Received: (qmail 35368 invoked by uid 500); 10 Jul 2015 13:56:57 -0000 Delivered-To: apmail-ignite-commits-archive@ignite.apache.org Received: (qmail 35336 invoked by uid 500); 10 Jul 2015 13:56:57 -0000 Mailing-List: contact commits-help@ignite.incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@ignite.incubator.apache.org Delivered-To: mailing list commits@ignite.incubator.apache.org Received: (qmail 35327 invoked by uid 99); 10 Jul 2015 13:56:57 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 10 Jul 2015 13:56:57 +0000 X-ASF-Spam-Status: No, hits=-2000.6 required=5.0 tests=ALL_TRUSTED,RP_MATCHES_RCVD X-Spam-Check-By: apache.org Received: from [140.211.11.3] (HELO mail.apache.org) (140.211.11.3) by apache.org (qpsmtpd/0.29) with SMTP; Fri, 10 Jul 2015 13:54:44 +0000 Received: (qmail 34987 invoked by uid 99); 10 Jul 2015 13:56:31 -0000 Received: from git1-us-west.apache.org (HELO git1-us-west.apache.org) (140.211.11.23) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 10 Jul 2015 13:56:31 +0000 Received: by git1-us-west.apache.org (ASF Mail Server at git1-us-west.apache.org, from userid 33) id D17E0E3AAB; Fri, 10 Jul 2015 13:56:30 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: sboikov@apache.org To: commits@ignite.incubator.apache.org Date: Fri, 10 Jul 2015 13:56:35 -0000 Message-Id: In-Reply-To: <0aa0f8c506434a8d9f9da323b530541a@git.apache.org> References: <0aa0f8c506434a8d9f9da323b530541a@git.apache.org> X-Mailer: ASF-Git Admin Mailer Subject: [6/8] incubator-ignite git commit: # ignite-901 X-Virus-Checked: Checked by ClamAV on apache.org # ignite-901 Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/782c235c Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/782c235c Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/782c235c Branch: refs/heads/ignite-901 Commit: 782c235cfafcb2195c6a4b505f3d8a42bf97dba1 Parents: a6222c9 6386794 Author: sboikov Authored: Fri Jul 10 12:14:53 2015 +0300 Committer: sboikov Committed: Fri Jul 10 12:14:53 2015 +0300 ---------------------------------------------------------------------- .../examples/ScalarCacheAffinityExample.scala | 2 +- .../scalar/examples/ScalarCacheExample.scala | 2 +- .../ScalarCachePopularNumbersExample.scala | 2 +- .../examples/ScalarCacheQueryExample.scala | 2 +- .../examples/ScalarSnowflakeSchemaExample.scala | 4 +- .../java/org/apache/ignite/IgniteCache.java | 14 +- .../org/apache/ignite/cache/CacheManager.java | 13 +- .../apache/ignite/internal/IgniteKernal.java | 2 +- .../discovery/GridDiscoveryManager.java | 23 +- .../cache/DynamicCacheChangeRequest.java | 39 +- .../processors/cache/GridCacheGateway.java | 4 +- .../GridCachePartitionExchangeManager.java | 6 +- .../processors/cache/GridCacheProcessor.java | 102 ++- .../processors/cache/IgniteCacheProxy.java | 448 +++++++--- .../distributed/dht/GridDhtCacheEntry.java | 4 +- .../GridDhtPartitionsExchangeFuture.java | 30 +- .../datastreamer/DataStreamProcessor.java | 3 + .../ignite/internal/util/IgniteUtils.java | 6 +- .../visor/cache/VisorCacheStopTask.java | 2 +- .../tcp/internal/TcpDiscoveryNode.java | 8 +- .../affinity/IgniteClientNodeAffinityTest.java | 14 +- .../IgniteFairAffinityDynamicCacheSelfTest.java | 3 +- ...cheStoreSessionListenerAbstractSelfTest.java | 111 ++- .../GridCacheTxLoadFromStoreOnLockSelfTest.java | 34 +- .../CacheMetricsForClusterGroupSelfTest.java | 10 +- .../cache/CacheOffheapMapEntrySelfTest.java | 7 +- .../cache/CacheStopAndDestroySelfTest.java | 859 +++++++++++++++++++ ...eUsageMultinodeDynamicStartAbstractTest.java | 2 +- ...ProjectionForCachesOnDaemonNodeSelfTest.java | 2 +- .../cache/IgniteDynamicCacheStartSelfTest.java | 140 +-- ...teCacheClientNodePartitionsExchangeTest.java | 29 +- ...CacheLocalOffHeapAndSwapMetricsSelfTest.java | 2 +- .../DataStreamerMultinodeCreateCacheTest.java | 14 +- .../testsuites/IgniteCacheTestSuite4.java | 2 + .../CacheConfigurationP2PTestClient.java | 4 +- 35 files changed, 1603 insertions(+), 346 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/782c235c/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/782c235c/modules/core/src/main/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManager.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/782c235c/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheGateway.java ---------------------------------------------------------------------- diff --cc modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheGateway.java index da409a3,f2beb0a..eeb9b7c --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheGateway.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheGateway.java @@@ -99,14 -68,20 +99,14 @@@ public class GridCacheGateway * * @return {@code True} if enter successful, {@code false} if the cache or the node was stopped. */ - public boolean enterIfNotClosed() { + public boolean enterIfNotStopped() { onEnter(); - // Must unlock in case of unexpected errors to avoid - // deadlocks during kernal stop. + // Must unlock in case of unexpected errors to avoid deadlocks during kernal stop. rwLock.readLock(); - if (stopped) { - rwLock.readUnlock(); - - return false; - } + return checkState(true, false); - return true; } /** @@@ -114,10 -89,10 +114,10 @@@ * * @return {@code True} if enter successful, {@code false} if the cache or the node was stopped. */ - public boolean enterIfNotClosedNoLock() { + public boolean enterIfNotStoppedNoLock() { onEnter(); - return !stopped; + return checkState(false, false); } /** http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/782c235c/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/782c235c/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java ---------------------------------------------------------------------- diff --cc modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java index 767b62a,bb87a86..46f9206 --- 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 @@@ -1602,13 -1521,19 +1608,19 @@@ public class GridCacheProcessor extend * @param req Stop request. */ public void blockGateway(DynamicCacheChangeRequest req) { - assert req.stop(); + assert req.stop() || req.close(); - // Break the proxy before exchange future is done. - IgniteCacheProxy proxy = jCacheProxies.get(maskNull(req.cacheName())); + if (req.stop() || (req.close() && req.initiatingNodeId().equals(ctx.localNodeId()))) { + // Break the proxy before exchange future is done. + IgniteCacheProxy proxy = jCacheProxies.get(maskNull(req.cacheName())); - if (proxy != null) - proxy.gate().stopped(); + if (proxy != null) { + if (req.stop()) - proxy.gate().block(); ++ proxy.gate().stopped(); + else + proxy.closeProxy(); + } + } } /** http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/782c235c/modules/core/src/main/java/org/apache/ignite/internal/processors/datastreamer/DataStreamProcessor.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/782c235c/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/782c235c/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/internal/TcpDiscoveryNode.java ----------------------------------------------------------------------