diff --git a/solr/CHANGES.txt b/solr/CHANGES.txt index 528a896fb8d..9f4ac215121 100644 --- a/solr/CHANGES.txt +++ b/solr/CHANGES.txt @@ -45,7 +45,7 @@ Upgrading from Solr 5.x * SolrClient.shutdown() has been removed, use SolrClient.close() instead. * The deprecated zkCredientialsProvider element in solrcloud section of solr.xml - is now removed. Use the correct spelling (zkCredentialsProvider) instead. + is now removed. Use tI'll start looking at it today. - Mark On Wed, Aug 19, 2015 at 10:15 PM Gregory Chanan future : pending) { - // TODO: any issues with interrupting? shouldn't be if - // there are finally blocks to release connections. - future.cancel(true); + future.cancel(false); } } diff --git a/solr/core/src/java/org/apache/solr/update/CommitTracker.java b/solr/core/src/java/org/apache/solr/update/CommitTracker.java index 96633db4ff2..15481c86b42 100644 --- a/solr/core/src/java/org/apache/solr/update/CommitTracker.java +++ b/solr/core/src/java/org/apache/solr/update/CommitTracker.java @@ -89,7 +89,7 @@ public final class CommitTracker implements Runnable { public synchronized void close() { if (pending != null) { - pending.cancel(true); + pending.cancel(false); pending = null; } scheduler.shutdownNow(); diff --git a/solr/core/src/java/org/apache/solr/update/UpdateLog.java b/solr/core/src/java/org/apache/solr/update/UpdateLog.java index 0d0876f302f..071ab17041c 100644 --- a/solr/core/src/java/org/apache/solr/update/UpdateLog.java +++ b/solr/core/src/java/org/apache/solr/update/UpdateLog.java @@ -906,7 +906,7 @@ public class UpdateLog implements PluginInfoInitialized { } try { - ExecutorUtil.shutdownNowAndAwaitTermination(recoveryExecutor); + ExecutorUtil.shutdownAndAwaitTermination(recoveryExecutor); } catch (Exception e) { SolrException.log(log, e); } diff --git a/solr/solrj/src/java/org/apache/solr/common/util/ExecutorUtil.java b/solr/solrj/src/java/org/apache/solr/common/util/ExecutorUtil.java index f0c6e05f0a0..6435c3bbea3 100644 --- a/solr/solrj/src/java/org/apache/solr/common/util/ExecutorUtil.java +++ b/solr/solrj/src/java/org/apache/solr/common/util/ExecutorUtil.java @@ -78,8 +78,10 @@ public class ExecutorUtil { public void clean(AtomicReference ctx); } - // this will interrupt the threads! Lucene and Solr do not like this because it can close channels, so only use - // this if you know what you are doing - you probably want shutdownAndAwaitTermination + // ** This will interrupt the threads! ** Lucene and Solr do not like this because it can close channels, so only use + // this if you know what you are doing - you probably want shutdownAndAwaitTermination. + // Marked as Deprecated to discourage use. + @Deprecated public static void shutdownNowAndAwaitTermination(ExecutorService pool) { pool.shutdown(); // Disable new tasks from being submitted pool.shutdownNow(); // Cancel currently executing tasks - NOTE: this interrupts!