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 2017/02/18 02:23:09 UTC

[1/3] lucene-solr:master: SOLR-9846: Overseer is not always closed after being started.

Repository: lucene-solr
Updated Branches:
  refs/heads/master 33e398c02 -> 19c8ec2bf


SOLR-9846: Overseer is not always closed after being started.


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

Branch: refs/heads/master
Commit: ed05debb4e223e07aeeccdc0a802b8c2a514ba23
Parents: 6b169d2
Author: markrmiller <ma...@apache.org>
Authored: Fri Feb 17 11:29:19 2017 -0500
Committer: markrmiller <ma...@apache.org>
Committed: Fri Feb 17 21:22:43 2017 -0500

----------------------------------------------------------------------
 solr/CHANGES.txt                                            | 1 +
 .../src/java/org/apache/solr/cloud/ElectionContext.java     | 6 ++++++
 solr/core/src/java/org/apache/solr/cloud/LeaderElector.java | 1 +
 solr/core/src/java/org/apache/solr/cloud/ZkController.java  | 9 ++++-----
 4 files changed, 12 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/ed05debb/solr/CHANGES.txt
----------------------------------------------------------------------
diff --git a/solr/CHANGES.txt b/solr/CHANGES.txt
index f17018d..19157ba 100644
--- a/solr/CHANGES.txt
+++ b/solr/CHANGES.txt
@@ -165,6 +165,7 @@ Bug Fixes
 * SOLR-10141: Upgrade to Caffeine 2.3.5 since v1.0.1 contributed to BlockCache corruption because the
   removal listener was called more than once for some items and not at all for other items. (Ben Manes, yonik)
 
+* SOLR-9846: Overseer is not always closed after being started. (Mark Miller)
 
 Optimizations
 ----------------------

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/ed05debb/solr/core/src/java/org/apache/solr/cloud/ElectionContext.java
----------------------------------------------------------------------
diff --git a/solr/core/src/java/org/apache/solr/cloud/ElectionContext.java b/solr/core/src/java/org/apache/solr/cloud/ElectionContext.java
index b3cd585..3db6950 100644
--- a/solr/core/src/java/org/apache/solr/cloud/ElectionContext.java
+++ b/solr/core/src/java/org/apache/solr/cloud/ElectionContext.java
@@ -484,6 +484,7 @@ final class ShardLeaderElectionContext extends ShardLeaderElectionContextBase {
   public void checkLIR(String coreName, boolean allReplicasInLine)
       throws InterruptedException, KeeperException, IOException {
     if (allReplicasInLine) {
+      log.info("Found all replicas participating in election, clear LIR");
       // SOLR-8075: A bug may allow the proper leader to get marked as LIR DOWN and
       // if we are marked as DOWN but were able to become the leader, we remove
       // the DOWN entry here so that we don't fail publishing ACTIVE due to being in LIR.
@@ -752,6 +753,11 @@ final class OverseerElectionContext extends ElectionContext {
     super.cancelElection();
     overseer.close();
   }
+  
+  @Override
+  public void close() {
+    overseer.close();
+  }
 
   @Override
   public ElectionContext copy() {

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/ed05debb/solr/core/src/java/org/apache/solr/cloud/LeaderElector.java
----------------------------------------------------------------------
diff --git a/solr/core/src/java/org/apache/solr/cloud/LeaderElector.java b/solr/core/src/java/org/apache/solr/cloud/LeaderElector.java
index aa8943d..46f3c88 100644
--- a/solr/core/src/java/org/apache/solr/cloud/LeaderElector.java
+++ b/solr/core/src/java/org/apache/solr/cloud/LeaderElector.java
@@ -388,6 +388,7 @@ public  class LeaderElector {
     }
     if (watcher != null) watcher.cancel();
     this.context.cancelElection();
+    this.context.close();
     this.context = ctx;
     joinElection(ctx, true, joinAtHead);
   }

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/ed05debb/solr/core/src/java/org/apache/solr/cloud/ZkController.java
----------------------------------------------------------------------
diff --git a/solr/core/src/java/org/apache/solr/cloud/ZkController.java b/solr/core/src/java/org/apache/solr/cloud/ZkController.java
index 89a88e3..c083736 100644
--- a/solr/core/src/java/org/apache/solr/cloud/ZkController.java
+++ b/solr/core/src/java/org/apache/solr/cloud/ZkController.java
@@ -75,6 +75,7 @@ import org.apache.solr.common.cloud.ZooKeeperException;
 import org.apache.solr.common.params.CollectionParams;
 import org.apache.solr.common.params.CommonParams;
 import org.apache.solr.common.params.SolrParams;
+import org.apache.solr.common.util.IOUtils;
 import org.apache.solr.common.util.ObjectReleaseTracker;
 import org.apache.solr.common.util.StrUtils;
 import org.apache.solr.common.util.URLUtil;
@@ -324,6 +325,7 @@ public class ZkController {
                 ElectionContext prevContext = overseerElector.getContext();
                 if (prevContext != null) {
                   prevContext.cancelElection();
+                  prevContext.close();
                 }
 
                 overseerElector.setup(context);
@@ -534,11 +536,8 @@ public class ZkController {
       }
     } finally {
       try {
-        try {
-          overseer.close();
-        } catch (Exception e) {
-          log.error("Error closing overseer", e);
-        }
+        IOUtils.closeQuietly(overseerElector.getContext());
+        IOUtils.closeQuietly(overseer);
       } finally {
         try {
           try {


[3/3] lucene-solr:master: SOLR-10120: Clean up earlier so we don't hit closed resources.

Posted by ma...@apache.org.
SOLR-10120: Clean up earlier so we don't hit closed resources.


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

Branch: refs/heads/master
Commit: 19c8ec2bf1882bed1bb34d0b55198d03f2018838
Parents: ed05deb
Author: markrmiller <ma...@apache.org>
Authored: Fri Feb 17 11:30:39 2017 -0500
Committer: markrmiller <ma...@apache.org>
Committed: Fri Feb 17 21:22:44 2017 -0500

----------------------------------------------------------------------
 solr/core/src/java/org/apache/solr/core/SolrCore.java | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/19c8ec2b/solr/core/src/java/org/apache/solr/core/SolrCore.java
----------------------------------------------------------------------
diff --git a/solr/core/src/java/org/apache/solr/core/SolrCore.java b/solr/core/src/java/org/apache/solr/core/SolrCore.java
index 9e01374..b108b38 100644
--- a/solr/core/src/java/org/apache/solr/core/SolrCore.java
+++ b/solr/core/src/java/org/apache/solr/core/SolrCore.java
@@ -1505,6 +1505,14 @@ public final class SolrCore implements SolrInfoMBean, Closeable {
         throw (Error) e;
       }
     }
+    
+    if (coreStateClosed) {
+      try {
+        cleanupOldIndexDirectories(false);
+      } catch (Exception e) {
+        SolrException.log(log, e);
+      }
+    }
 
     try {
       infoRegistry.clear();
@@ -1536,11 +1544,6 @@ public final class SolrCore implements SolrInfoMBean, Closeable {
     }
 
     if (coreStateClosed) {
-      try {
-        cleanupOldIndexDirectories(false);
-      } catch (Exception e) {
-        SolrException.log(log, e);
-      }
       
       try {
         directoryFactory.close();


[2/3] lucene-solr:master: SOLR-10064: The Nightly test HdfsCollectionsAPIDistributedZkTest appears to be too fragile.

Posted by ma...@apache.org.
SOLR-10064: The Nightly test HdfsCollectionsAPIDistributedZkTest appears to be too fragile.


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

Branch: refs/heads/master
Commit: 6b169d2051ce892cab25c08adf08956423fbe048
Parents: 33e398c
Author: markrmiller <ma...@apache.org>
Authored: Fri Feb 17 11:03:08 2017 -0500
Committer: markrmiller <ma...@apache.org>
Committed: Fri Feb 17 21:22:43 2017 -0500

----------------------------------------------------------------------
 .../org/apache/solr/cloud/CollectionsAPIDistributedZkTest.java    | 2 +-
 .../solr/cloud/hdfs/HdfsCollectionsAPIDistributedZkTest.java      | 3 +++
 2 files changed, 4 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6b169d20/solr/core/src/test/org/apache/solr/cloud/CollectionsAPIDistributedZkTest.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/cloud/CollectionsAPIDistributedZkTest.java b/solr/core/src/test/org/apache/solr/cloud/CollectionsAPIDistributedZkTest.java
index c3d1a86..7925358 100644
--- a/solr/core/src/test/org/apache/solr/cloud/CollectionsAPIDistributedZkTest.java
+++ b/solr/core/src/test/org/apache/solr/cloud/CollectionsAPIDistributedZkTest.java
@@ -482,7 +482,7 @@ public class CollectionsAPIDistributedZkTest extends SolrCloudTestCase {
   public void testCollectionsAPI() throws Exception {
 
     // create new collections rapid fire
-    int cnt = random().nextInt(TEST_NIGHTLY ? 6 : 1) + 1;
+    int cnt = random().nextInt(TEST_NIGHTLY ? 3 : 1) + 1;
     CollectionAdminRequest.Create[] createRequests = new CollectionAdminRequest.Create[cnt];
 
     for (int i = 0; i < cnt; i++) {

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/6b169d20/solr/core/src/test/org/apache/solr/cloud/hdfs/HdfsCollectionsAPIDistributedZkTest.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/cloud/hdfs/HdfsCollectionsAPIDistributedZkTest.java b/solr/core/src/test/org/apache/solr/cloud/hdfs/HdfsCollectionsAPIDistributedZkTest.java
index c9a9a0f..1b830ad 100644
--- a/solr/core/src/test/org/apache/solr/cloud/hdfs/HdfsCollectionsAPIDistributedZkTest.java
+++ b/solr/core/src/test/org/apache/solr/cloud/hdfs/HdfsCollectionsAPIDistributedZkTest.java
@@ -38,6 +38,8 @@ public class HdfsCollectionsAPIDistributedZkTest extends CollectionsAPIDistribut
   @BeforeClass
   public static void setupClass() throws Exception {
     System.setProperty("solr.hdfs.blockcache.blocksperbank", "512");
+    System.setProperty("tests.hdfs.numdatanodes", "1");
+   
     dfsCluster = HdfsTestUtil.setupClass(createTempDir().toFile().getAbsolutePath());
 
     ZkConfigManager configManager = new ZkConfigManager(zkClient());
@@ -53,6 +55,7 @@ public class HdfsCollectionsAPIDistributedZkTest extends CollectionsAPIDistribut
     HdfsTestUtil.teardownClass(dfsCluster);
     dfsCluster = null;
     System.clearProperty("solr.hdfs.blockcache.blocksperbank");
+    System.clearProperty("tests.hdfs.numdatanodes");
     System.clearProperty("solr.hdfs.home");
   }