You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by jb...@apache.org on 2016/05/03 19:08:09 UTC

[1/2] lucene-solr:master: SOLR-9059: NPE in SolrClientCache following collection reload

Repository: lucene-solr
Updated Branches:
  refs/heads/master 184da9982 -> 1b746be0f


SOLR-9059: NPE in SolrClientCache following collection reload


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

Branch: refs/heads/master
Commit: fc6c24a9d457da858cc033b4adc6e86ecd660870
Parents: 184da99
Author: jbernste <jb...@apache.org>
Authored: Tue May 3 13:03:57 2016 -0400
Committer: jbernste <jb...@apache.org>
Committed: Tue May 3 13:04:21 2016 -0400

----------------------------------------------------------------------
 .../org/apache/solr/handler/TestSQLHandler.java | 31 ++++++++++++++++++++
 .../solr/client/solrj/io/SolrClientCache.java   |  3 +-
 2 files changed, 33 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/fc6c24a9/solr/core/src/test/org/apache/solr/handler/TestSQLHandler.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/handler/TestSQLHandler.java b/solr/core/src/test/org/apache/solr/handler/TestSQLHandler.java
index 893b6fe..bf111d6 100644
--- a/solr/core/src/test/org/apache/solr/handler/TestSQLHandler.java
+++ b/solr/core/src/test/org/apache/solr/handler/TestSQLHandler.java
@@ -31,6 +31,7 @@ import org.apache.solr.client.solrj.io.stream.SolrStream;
 import org.apache.solr.client.solrj.io.stream.TupleStream;
 import org.apache.solr.cloud.AbstractFullDistribZkTestBase;
 import org.apache.solr.common.cloud.DocCollection;
+import org.apache.solr.common.cloud.Replica;
 import org.apache.solr.common.params.CommonParams;
 import org.junit.After;
 import org.junit.AfterClass;
@@ -425,6 +426,36 @@ public class TestSQLHandler extends AbstractFullDistribZkTestBase {
       assert(tuple.getLong("myInt") == 7);
       assert(tuple.get("myString").equals("a"));
 
+      //Test after reload SOLR-9059//
+      Replica leader = getShardLeader("collection1", "shard1", 30 /* timeout secs */);
+
+      // reload collection and wait to see the core report it has been reloaded
+      boolean wasReloaded = reloadCollection(leader, "collection1");
+      assertTrue(wasReloaded);
+
+      params = new HashMap();
+      params.put(CommonParams.QT, "/sql");
+      params.put("stmt", "select id as myId, field_i as myInt, str_s as myString from collection1 where text='XXXX' AND id='(1 2 3)' order by field_i desc");
+
+      solrStream = new SolrStream(jetty.url, params);
+      tuples = getTuples(solrStream);
+
+      assert(tuples.size() == 3);
+
+      tuple = tuples.get(0);
+      assert(tuple.getLong("myId") == 3);
+      assert(tuple.getLong("myInt") == 20);
+      assert(tuple.get("myString").equals("a"));
+
+      tuple = tuples.get(1);
+      assert(tuple.getLong("myId") == 2);
+      assert(tuple.getLong("myInt") == 8);
+      assert(tuple.get("myString").equals("b"));
+
+      tuple = tuples.get(2);
+      assert(tuple.getLong("myId") == 1);
+      assert(tuple.getLong("myInt") == 7);
+      assert(tuple.get("myString").equals("a"));
 
     } finally {
       delete();

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/fc6c24a9/solr/solrj/src/java/org/apache/solr/client/solrj/io/SolrClientCache.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/io/SolrClientCache.java b/solr/solrj/src/java/org/apache/solr/client/solrj/io/SolrClientCache.java
index cd992a4..da94162 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/io/SolrClientCache.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/io/SolrClientCache.java
@@ -66,7 +66,7 @@ public class SolrClientCache implements Serializable {
     return client;
   }
 
-  public void close() {
+  public synchronized void close() {
     for(Map.Entry<String, SolrClient> entry : solrClients.entrySet()) {
       try {
         entry.getValue().close();
@@ -74,5 +74,6 @@ public class SolrClientCache implements Serializable {
         log.error("Error closing SolrClient for " + entry.getKey(), e);
       }
     }
+    solrClients.clear();
   }
 }


[2/2] lucene-solr:master: SOLR-9059: Update CHANGES.txt

Posted by jb...@apache.org.
SOLR-9059: Update CHANGES.txt


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

Branch: refs/heads/master
Commit: 1b746be0f7f7ab10425fae2fc1e1253ec3c1bc72
Parents: fc6c24a
Author: jbernste <jb...@apache.org>
Authored: Tue May 3 13:14:38 2016 -0400
Committer: jbernste <jb...@apache.org>
Committed: Tue May 3 13:14:38 2016 -0400

----------------------------------------------------------------------
 solr/CHANGES.txt | 2 ++
 1 file changed, 2 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/1b746be0/solr/CHANGES.txt
----------------------------------------------------------------------
diff --git a/solr/CHANGES.txt b/solr/CHANGES.txt
index 9605cda..c66586d 100644
--- a/solr/CHANGES.txt
+++ b/solr/CHANGES.txt
@@ -175,6 +175,8 @@ Bug Fixes
 
 * SOLR-9028: Fixed some test related bugs preventing SSL + ClientAuth from ever being tested (hossman)
 
+* SOLR-9059: NPE in SolrClientCache following collection reload (Joel Bernstein, Ryan Yacyshyn)
+
 Optimizations
 ----------------------
 * SOLR-8722: Don't force a full ZkStateReader refresh on every Overseer operation.