ignite-gg-12335 fix fail activation after fail get file lock

Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/369133a0
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/369133a0
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/369133a0

Branch: refs/heads/ignite-2.1.2-exchange
Commit: 369133a0405b857728bb9d157311edac21cfeba5
Parents: 52626df
Author: Dmitriy Govorukhin <[email protected]>
Authored: Sat Jun 17 17:41:16 2017 +0300
Committer: Dmitriy Govorukhin <[email protected]>
Committed: Sat Jun 17 17:41:16 2017 +0300

----------------------------------------------------------------------
 .../internal/managers/discovery/GridDiscoveryManager.java    | 2 +-
 .../ignite/internal/processors/cache/ClusterCachesInfo.java  | 2 +-
 .../dht/preloader/GridDhtPartitionsExchangeFuture.java       | 8 ++++++--
 .../processors/cluster/GridClusterStateProcessor.java        | 2 ++
 .../standbycluster/IgniteChangeGlobalStateTest.java          | 4 ++--
 5 files changed, 12 insertions(+), 6 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ignite/blob/369133a0/modules/core/src/main/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManager.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManager.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManager.java
index 485e682..de8daa7 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManager.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManager.java
@@ -332,7 +332,7 @@ public class GridDiscoveryManager extends 
GridManagerAdapter<DiscoverySpi> {
     /**
      *
      */
-    public void onLocalNodeJoin() {
+    public void cleanCachesAndGroups() {
         registeredCacheGrps.clear();
         registeredCaches.clear();
     }

http://git-wip-us.apache.org/repos/asf/ignite/blob/369133a0/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/ClusterCachesInfo.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/ClusterCachesInfo.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/ClusterCachesInfo.java
index 0f3b6b1..15345d9 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/ClusterCachesInfo.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/ClusterCachesInfo.java
@@ -860,7 +860,7 @@ class ClusterCachesInfo {
         // Replace locally registered data with actual data received from 
cluster.
         registeredCaches.clear();
         registeredCacheGrps.clear();
-        ctx.discovery().onLocalNodeJoin();
+        ctx.discovery().cleanCachesAndGroups();
 
         for (CacheGroupData grpData : cachesData.cacheGroups().values()) {
             CacheGroupDescriptor grpDesc = new CacheGroupDescriptor(

http://git-wip-us.apache.org/repos/asf/ignite/blob/369133a0/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java
index fe7527a..939fa80 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java
@@ -717,8 +717,12 @@ public class GridDhtPartitionsExchangeFuture extends 
GridDhtTopologyFutureAdapte
         if (exchangeOnChangeGlobalState = 
stateProc.changeGlobalState(exchActions, topologyVersion())) {
             changeGlobalStateE = stateProc.onChangeGlobalState();
 
-            if (crd && changeGlobalStateE != null)
-                changeGlobalStateExceptions.put(cctx.localNodeId(), 
changeGlobalStateE);
+            if (changeGlobalStateE != null) {
+                if (crd)
+                    changeGlobalStateExceptions.put(cctx.localNodeId(), 
changeGlobalStateE);
+
+                return cctx.kernalContext().clientNode() ? ExchangeType.CLIENT 
: ExchangeType.ALL;
+            }
         }
 
         assert !exchActions.clientOnlyExchange() : exchActions;

http://git-wip-us.apache.org/repos/asf/ignite/blob/369133a0/modules/core/src/main/java/org/apache/ignite/internal/processors/cluster/GridClusterStateProcessor.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cluster/GridClusterStateProcessor.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cluster/GridClusterStateProcessor.java
index 9bf0cfa..031c596 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cluster/GridClusterStateProcessor.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cluster/GridClusterStateProcessor.java
@@ -674,6 +674,8 @@ public class GridClusterStateProcessor extends 
GridProcessorAdapter {
 
                 sharedCtx.affinity().removeAllCacheInfo();
 
+                ctx.discovery().cleanCachesAndGroups();
+
                 if (!ctx.clientNode()) {
                     sharedCtx.database().onDeActivate(ctx);
 

http://git-wip-us.apache.org/repos/asf/ignite/blob/369133a0/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/standbycluster/IgniteChangeGlobalStateTest.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/standbycluster/IgniteChangeGlobalStateTest.java
 
b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/standbycluster/IgniteChangeGlobalStateTest.java
index 0df8fe0..9151c24 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/standbycluster/IgniteChangeGlobalStateTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/standbycluster/IgniteChangeGlobalStateTest.java
@@ -501,7 +501,7 @@ public class IgniteChangeGlobalStateTest extends 
IgniteChangeGlobalStateAbstract
     /**
      *
      */
-    public void _testFailGetLock() throws Exception {
+    public void testFailGetLock() throws Exception {
         Ignite ig1P = primary(0);
         Ignite ig2P = primary(1);
         Ignite ig3P = primary(2);
@@ -558,7 +558,7 @@ public class IgniteChangeGlobalStateTest extends 
IgniteChangeGlobalStateAbstract
     /**
      *
      */
-    public void _testActivateAfterFailGetLock() throws Exception {
+    public void testActivateAfterFailGetLock() throws Exception {
         Ignite ig1P = primary(0);
         Ignite ig2P = primary(1);
         Ignite ig3P = primary(2);

Reply via email to