You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by va...@apache.org on 2016/09/16 13:31:57 UTC

lucene-solr:master: SOLR-9522: Improve error handling in ZKPropertiesWriter

Repository: lucene-solr
Updated Branches:
  refs/heads/master 5610fd9df -> 5d6b7fffc


SOLR-9522: Improve error handling in ZKPropertiesWriter


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

Branch: refs/heads/master
Commit: 5d6b7fffc3e09efd908729340a587a274e9bdc72
Parents: 5610fd9
Author: Varun Thacker <va...@apache.org>
Authored: Fri Sep 16 18:47:06 2016 +0530
Committer: Varun Thacker <va...@apache.org>
Committed: Fri Sep 16 18:47:06 2016 +0530

----------------------------------------------------------------------
 solr/CHANGES.txt                                |  2 ++
 .../handler/dataimport/ZKPropertiesWriter.java  | 20 +++++++-------------
 2 files changed, 9 insertions(+), 13 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/5d6b7fff/solr/CHANGES.txt
----------------------------------------------------------------------
diff --git a/solr/CHANGES.txt b/solr/CHANGES.txt
index d8df854..0d8bbcc 100644
--- a/solr/CHANGES.txt
+++ b/solr/CHANGES.txt
@@ -132,6 +132,8 @@ Bug Fixes
 * SOLR-9507: CoreContainer threads now correctly set their MDC logging values
   (Alan Woodward)
 
+* SOLR-9522: Improve error handling in ZKPropertiesWriter (Varun Thacker)
+
 Optimizations
 ----------------------
 

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/5d6b7fff/solr/contrib/dataimporthandler/src/java/org/apache/solr/handler/dataimport/ZKPropertiesWriter.java
----------------------------------------------------------------------
diff --git a/solr/contrib/dataimporthandler/src/java/org/apache/solr/handler/dataimport/ZKPropertiesWriter.java b/solr/contrib/dataimporthandler/src/java/org/apache/solr/handler/dataimport/ZKPropertiesWriter.java
index 0bde409..2d54872 100644
--- a/solr/contrib/dataimporthandler/src/java/org/apache/solr/handler/dataimport/ZKPropertiesWriter.java
+++ b/solr/contrib/dataimporthandler/src/java/org/apache/solr/handler/dataimport/ZKPropertiesWriter.java
@@ -44,14 +44,12 @@ public class ZKPropertiesWriter extends SimplePropertiesWriter {
   @Override
   public void init(DataImporter dataImporter, Map<String, String> params) {
     super.init(dataImporter, params);    
-    zkClient = dataImporter.getCore().getCoreDescriptor().getCoreContainer()
-        .getZkController().getZkClient();
+    zkClient = dataImporter.getCore().getCoreDescriptor().getCoreContainer().getZkController().getZkClient();
   }
   
   @Override
   protected void findDirectory(DataImporter dataImporter, Map<String, String> params) {
-    String collection = dataImporter.getCore().getCoreDescriptor()
-        .getCloudDescriptor().getCollectionName();
+    String collection = dataImporter.getCore().getCoreDescriptor().getCloudDescriptor().getCollectionName();
     path = "/configs/" + collection + "/" + filename;
   }
   
@@ -74,13 +72,9 @@ public class ZKPropertiesWriter extends SimplePropertiesWriter {
         } catch (NodeExistsException e) {}
       }
       zkClient.setData(path, bytes, false);
-    } catch (InterruptedException e) {
-      Thread.currentThread().interrupt();
-      log.warn(
-          "Could not persist properties to " + path + " :" + e.getClass(), e);
     } catch (Exception e) {
-      log.warn(
-          "Could not persist properties to " + path + " :" + e.getClass(), e);
+      SolrZkClient.checkInterrupted(e);
+      log.warn("Could not persist properties to " + path + " :" + e.getClass(), e);
     }
   }
   
@@ -88,13 +82,13 @@ public class ZKPropertiesWriter extends SimplePropertiesWriter {
   public Map<String, Object> readIndexerProperties() {
     Properties props = new Properties();
     try {
-      byte[] data = zkClient.getData(path, null, null, false);
+      byte[] data = zkClient.getData(path, null, null, true);
       if (data != null) {
         props.load(new StringReader(new String(data, StandardCharsets.UTF_8)));
       }
     } catch (Exception e) {
-      log.warn(
-          "Could not read DIH properties from " + path + " :" + e.getClass(), e);
+      SolrZkClient.checkInterrupted(e);
+      log.warn("Could not read DIH properties from " + path + " :" + e.getClass(), e);
     }
     return propertiesToMap(props);
   }