You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by no...@apache.org on 2014/01/21 09:20:57 UTC
svn commit: r1559936 - in /lucene/dev/trunk/solr/core/src:
java/org/apache/solr/cloud/OverseerCollectionProcessor.java
test/org/apache/solr/cloud/OverseerRolesTest.java
Author: noble
Date: Tue Jan 21 08:20:57 2014
New Revision: 1559936
URL: http://svn.apache.org/r1559936
Log:
SOLR-5476 handle nonode exception
Modified:
lucene/dev/trunk/solr/core/src/java/org/apache/solr/cloud/OverseerCollectionProcessor.java
lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/OverseerRolesTest.java
Modified: lucene/dev/trunk/solr/core/src/java/org/apache/solr/cloud/OverseerCollectionProcessor.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/java/org/apache/solr/cloud/OverseerCollectionProcessor.java?rev=1559936&r1=1559935&r2=1559936&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/java/org/apache/solr/cloud/OverseerCollectionProcessor.java (original)
+++ lucene/dev/trunk/solr/core/src/java/org/apache/solr/cloud/OverseerCollectionProcessor.java Tue Jan 21 08:20:57 2014
@@ -307,7 +307,13 @@ public class OverseerCollectionProcessor
}
public static String getLeaderNode(SolrZkClient zkClient) throws KeeperException, InterruptedException {
- Map m = (Map) ZkStateReader.fromJSON(zkClient.getData("/overseer_elect/leader", null, new Stat(), true));
+ byte[] data = new byte[0];
+ try {
+ data = zkClient.getData("/overseer_elect/leader", null, new Stat(), true);
+ } catch (KeeperException.NoNodeException e) {
+ return null;
+ }
+ Map m = (Map) ZkStateReader.fromJSON(data);
String s = (String) m.get("id");
// log.info("leader-id {}",s);
String nodeName = LeaderElector.getNodeName(s);
Modified: lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/OverseerRolesTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/OverseerRolesTest.java?rev=1559936&r1=1559935&r2=1559936&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/OverseerRolesTest.java (original)
+++ lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/OverseerRolesTest.java Tue Jan 21 08:20:57 2014
@@ -99,7 +99,7 @@ public class OverseerRolesTest extends
ArrayList<String> l = new ArrayList<>(nodes);
log.info("All nodes {}", l);
- String currentLeader = getLeaderNode(client);
+ String currentLeader = OverseerCollectionProcessor.getLeaderNode(client.getZkStateReader().getZkClient());
log.info("Current leader {} ", currentLeader);
l.remove(currentLeader);
@@ -112,7 +112,7 @@ public class OverseerRolesTest extends
boolean leaderchanged = false;
for(;System.currentTimeMillis() < timeout;){
- if(getLeaderNode(client).equals(overseerDesignate)){
+ if(overseerDesignate.equals(OverseerCollectionProcessor.getLeaderNode(client.getZkStateReader().getZkClient()))){
log.info("overseer designate is the new overseer");
leaderchanged =true;
break;
@@ -168,15 +168,6 @@ public class OverseerRolesTest extends
client.request(request);
}
- private String getLeaderNode(CloudSolrServer client) throws KeeperException, InterruptedException {
- Map m = (Map) ZkStateReader.fromJSON(client.getZkStateReader().getZkClient().getData("/overseer_elect/leader", null, new Stat(), true));
- String s = (String) m.get("id");
-// log.info("leader-id {}",s);
- String nodeName = LeaderElector.getNodeName(s);
-// log.info("Leader {}", nodeName);
- return nodeName;
- }
-
protected void createCollection(String COLL_NAME, CloudSolrServer client) throws Exception {
int replicationFactor = 2;
int numShards = 4;