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 2013/11/16 23:31:35 UTC

svn commit: r1542605 - in /lucene/dev/branches/branch_4x: ./ solr/ solr/CHANGES.txt solr/core/ solr/core/src/java/org/apache/solr/cloud/SyncStrategy.java solr/solrj/ solr/solrj/src/java/org/apache/solr/common/util/ExecutorUtil.java

Author: markrmiller
Date: Sat Nov 16 22:31:34 2013
New Revision: 1542605

URL: http://svn.apache.org/r1542605
Log:
SOLR-5451: SyncStrategy closes it's http connection manager before the executor that uses it in it's close method.

Modified:
    lucene/dev/branches/branch_4x/   (props changed)
    lucene/dev/branches/branch_4x/solr/   (props changed)
    lucene/dev/branches/branch_4x/solr/CHANGES.txt   (contents, props changed)
    lucene/dev/branches/branch_4x/solr/core/   (props changed)
    lucene/dev/branches/branch_4x/solr/core/src/java/org/apache/solr/cloud/SyncStrategy.java
    lucene/dev/branches/branch_4x/solr/solrj/   (props changed)
    lucene/dev/branches/branch_4x/solr/solrj/src/java/org/apache/solr/common/util/ExecutorUtil.java

Modified: lucene/dev/branches/branch_4x/solr/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/solr/CHANGES.txt?rev=1542605&r1=1542604&r2=1542605&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/solr/CHANGES.txt (original)
+++ lucene/dev/branches/branch_4x/solr/CHANGES.txt Sat Nov 16 22:31:34 2013
@@ -69,6 +69,9 @@ Bug Fixes
 
 * SOLR-4612: Admin UI - Analysis Screen contains empty table-columns (steffkes)
 
+* SOLR-5451: SyncStrategy closes it's http connection manager before the
+  executor that uses it in it's close method. (Mark Miller)
+
 Other Changes
 ---------------------
 

Modified: lucene/dev/branches/branch_4x/solr/core/src/java/org/apache/solr/cloud/SyncStrategy.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/solr/core/src/java/org/apache/solr/cloud/SyncStrategy.java?rev=1542605&r1=1542604&r2=1542605&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/solr/core/src/java/org/apache/solr/cloud/SyncStrategy.java (original)
+++ lucene/dev/branches/branch_4x/solr/core/src/java/org/apache/solr/cloud/SyncStrategy.java Sat Nov 16 22:31:34 2013
@@ -258,12 +258,14 @@ public class SyncStrategy {
   public void close() {
     this.isClosed = true;
     try {
-      client.getConnectionManager().shutdown();
+      ExecutorUtil.shutdownAndAwaitTermination(recoveryCmdExecutor);
     } catch (Throwable e) {
       SolrException.log(log, e);
     }
+    
+    // we must close connection manager *after* shutting down executor
     try {
-      ExecutorUtil.shutdownNowAndAwaitTermination(recoveryCmdExecutor);
+      client.getConnectionManager().shutdown();
     } catch (Throwable e) {
       SolrException.log(log, e);
     }

Modified: lucene/dev/branches/branch_4x/solr/solrj/src/java/org/apache/solr/common/util/ExecutorUtil.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/solr/solrj/src/java/org/apache/solr/common/util/ExecutorUtil.java?rev=1542605&r1=1542604&r2=1542605&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/solr/solrj/src/java/org/apache/solr/common/util/ExecutorUtil.java (original)
+++ lucene/dev/branches/branch_4x/solr/solrj/src/java/org/apache/solr/common/util/ExecutorUtil.java Sat Nov 16 22:31:34 2013
@@ -51,7 +51,7 @@ public class ExecutorUtil {
     while (!shutdown) {
       try {
         // Wait a while for existing tasks to terminate
-        shutdown = pool.awaitTermination(30, TimeUnit.SECONDS);
+        shutdown = pool.awaitTermination(60, TimeUnit.SECONDS);
       } catch (InterruptedException ie) {
         // Preserve interrupt status
         Thread.currentThread().interrupt();