[infinispan-issues] [JBoss JIRA] (ISPN-3395) ISPN000196: Failed to recover cluster state after the current node became the coordinator
Mayank Agarwal (JIRA)
jira-events at lists.jboss.org
Mon Aug 5 04:23:26 EDT 2013
Mayank Agarwal created ISPN-3395:
------------------------------------
Summary: ISPN000196: Failed to recover cluster state after the current node became the coordinator
Key: ISPN-3395
URL: https://issues.jboss.org/browse/ISPN-3395
Project: Infinispan
Issue Type: Bug
Affects Versions: 5.3.0.Final
Reporter: Mayank Agarwal
Assignee: Mircea Markus
We are using infinispan 5.3.0.Final in our distributed application. we are testing infinispan in HA scenarios and getting following exception when new node becomes co-ordinator.
ISPN000196: Failed to recover cluster state after the current node became the coordinator
java.lang.NullPointerException: null
at org.infinispan.topology.ClusterTopologyManagerImpl.recoverClusterStatus(ClusterTopologyManagerImpl.java:455) ~[infinispan-core-5.3.0.1.Final.jar:5.3.0.1.Final]
at org.infinispan.topology.ClusterTopologyManagerImpl.handleNewView(ClusterTopologyManagerImpl.java:235) ~[infinispan-core-5.3.0.1.Final.jar:5.3.0.1.Final]
at org.infinispan.topology.ClusterTopologyManagerImpl$ClusterViewListener$1.run(ClusterTopologyManagerImpl.java:647) ~[infinispan-core-5.3.0.1.Final.jar:5.3.0.1.Final]
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) ~[na:1.6.0_25]
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source) ~[na:1.6.0_25]
at java.util.concurrent.FutureTask.run(Unknown Source) [na:1.6.0_25]
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source) [na:1.6.0_25]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [na:1.6.0_25]
at java.lang.Thread.run(Unknown Source) [na:1.6.0_25]
This is happening because cacheTopology is null at ClusterTopologyManagerImpl.java:455
at 449: code is checking cacheTopology for null that for loop which is updating cacheStatusMap at 457 should be in that check itself.
Fix:
--- a/core/src/main/java/org/infinispan/topology/ClusterTopologyManagerImpl.java
+++ b/core/src/main/java/org/infinispan/topology/ClusterTopologyManagerImpl.java
@@ -448,7 +448,7 @@ public class ClusterTopologyManagerImpl implements ClusterTopologyManager {
// but didn't get a response back yet
if (cacheTopology != null) {
topologyList.add(cacheTopology);
- }
+
// Add all the members of the topology that have sent responses first
// If we only added the sender, we could end up with a different member order
@@ -457,6 +457,7 @@ public class ClusterTopologyManagerImpl implements ClusterTopologyManager {
cacheStatusMap.get(cacheName).addMember(member);
}
}
+ }
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the infinispan-issues
mailing list