You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by er...@apache.org on 2018/04/17 06:09:54 UTC

lucene-solr:branch_7x: SOLR-10169: PeerSync will hit an NPE on no response errors when looking for fingerprint.

Repository: lucene-solr
Updated Branches:
  refs/heads/branch_7x d60ecf29d -> e97044338


SOLR-10169: PeerSync will hit an NPE on no response errors when looking for fingerprint.

(cherry picked from commit a417a2c)


Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/e9704433
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/e9704433
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/e9704433

Branch: refs/heads/branch_7x
Commit: e97044338e04b03184316bb0f537d7a80305be80
Parents: d60ecf2
Author: Erick Erickson <er...@apache.org>
Authored: Mon Apr 16 21:51:02 2018 -0700
Committer: Erick Erickson <er...@apache.org>
Committed: Mon Apr 16 23:09:49 2018 -0700

----------------------------------------------------------------------
 solr/CHANGES.txt                                        |  4 +++-
 solr/core/src/java/org/apache/solr/update/PeerSync.java | 10 +++++++---
 2 files changed, 10 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/e9704433/solr/CHANGES.txt
----------------------------------------------------------------------
diff --git a/solr/CHANGES.txt b/solr/CHANGES.txt
index 86b6637..945c9a2 100644
--- a/solr/CHANGES.txt
+++ b/solr/CHANGES.txt
@@ -141,7 +141,9 @@ Bug Fixes
   (Amrit Sarkar, Varun Thacker)
 
 * SOLR-11840: Fix bin/solr help-text inconsistencies (Jason Gerlowski)
- 
+
+* SOLR-10169: PeerSync will hit an NPE on no response errors when looking for fingerprint. (Erick Erickson)
+
 Optimizations
 ----------------------
 

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/e9704433/solr/core/src/java/org/apache/solr/update/PeerSync.java
----------------------------------------------------------------------
diff --git a/solr/core/src/java/org/apache/solr/update/PeerSync.java b/solr/core/src/java/org/apache/solr/update/PeerSync.java
index 10b3ea1..3511a6c 100644
--- a/solr/core/src/java/org/apache/solr/update/PeerSync.java
+++ b/solr/core/src/java/org/apache/solr/update/PeerSync.java
@@ -388,9 +388,13 @@ public class PeerSync implements SolrMetricProducer {
       ShardResponse srsp = shardHandler.takeCompletedOrError();
       if (srsp == null) break;
 
-      Object replicaFingerprint = srsp.getSolrResponse().getResponse().get("fingerprint");
+      Object replicaFingerprint = null;
+      if (srsp.getSolrResponse() != null && srsp.getSolrResponse().getResponse() != null) {
+        replicaFingerprint = srsp.getSolrResponse().getResponse().get("fingerprint");
+      }
+
       if (replicaFingerprint == null) {
-        log.warn("Replica did not return a fingerprint - possibly an older Solr version");
+        log.warn("Replica did not return a fingerprint - possibly an older Solr version or exception");
         continue;
       }
       
@@ -402,7 +406,7 @@ public class PeerSync implements SolrMetricProducer {
           return true;
         }
       } catch(IOException e) {
-        log.warn("Could not cofirm if we are already in sync. Continue with PeerSync");
+        log.warn("Could not confirm if we are already in sync. Continue with PeerSync");
       }
     }