You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by ma...@apache.org on 2020/11/11 00:48:17 UTC
[lucene-solr] 01/03: @1152 Try this way.
This is an automated email from the ASF dual-hosted git repository.
markrmiller pushed a commit to branch reference_impl_dev
in repository https://gitbox.apache.org/repos/asf/lucene-solr.git
commit ea27aebeb0882515b01b07a04b8548dd363880f4
Author: markrmiller@gmail.com <ma...@gmail.com>
AuthorDate: Tue Nov 10 18:14:08 2020 -0600
@1152 Try this way.
---
.../src/java/org/apache/solr/common/cloud/ZkStateReader.java | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
diff --git a/solr/solrj/src/java/org/apache/solr/common/cloud/ZkStateReader.java b/solr/solrj/src/java/org/apache/solr/common/cloud/ZkStateReader.java
index 2faa060..a00ce0a 100644
--- a/solr/solrj/src/java/org/apache/solr/common/cloud/ZkStateReader.java
+++ b/solr/solrj/src/java/org/apache/solr/common/cloud/ZkStateReader.java
@@ -919,11 +919,14 @@ public class ZkStateReader implements SolrCloseable, Replica.NodeNameToBaseUrl {
return false;
Slice slice = c.getSlice(shard);
if (slice == null) return false;
- Replica leader = slice.getLeader();
- if (leader != null && leader.getState() == Replica.State.ACTIVE) {
- returnLeader.set(leader);
- return true;
+ for (Replica replica : slice.getReplicas()) {
+ String leader = replica.getProperty("leader");
+ if (leader != null && leader.equals("true") && replica.getState() == Replica.State.ACTIVE) {
+ returnLeader.set(replica);
+ return true;
+ }
}
+
return false;
});
} catch (TimeoutException e) {