You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@solr.apache.org by "Kevin Risden (Jira)" <ji...@apache.org> on 2022/05/05 20:05:00 UTC
[jira] [Commented] (SOLR-16187) ExecutorUtil#awaitTermination shouldn't wait forever?
[ https://issues.apache.org/jira/browse/SOLR-16187?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17532508#comment-17532508 ]
Kevin Risden commented on SOLR-16187:
-------------------------------------
FYI [~mdrob] [~magibney] since this was discussed some in SOLR-16154
> ExecutorUtil#awaitTermination shouldn't wait forever?
> -----------------------------------------------------
>
> Key: SOLR-16187
> URL: https://issues.apache.org/jira/browse/SOLR-16187
> Project: Solr
> Issue Type: Bug
> Security Level: Public(Default Security Level. Issues are Public)
> Reporter: Kevin Risden
> Priority: Major
>
> While looking at some of the other thread leak issues, found that ExecutorUtil#awaitTermination is waiting basically forever:
> https://github.com/apache/solr/blob/main/solr/solrj/src/java/org/apache/solr/common/util/ExecutorUtil.java#L98
> {code:java}
> public static void awaitTermination(ExecutorService pool) {
> boolean shutdown = false;
> while (!shutdown) {
> try {
> // Wait a while for existing tasks to terminate
> shutdown = pool.awaitTermination(60, TimeUnit.SECONDS);
> } catch (InterruptedException ie) {
> // Preserve interrupt status
> Thread.currentThread().interrupt();
> }
> }
> }
> {code}
> Instead it should be possible to wait and then if still not shutdown then interrupt the threads? ie: pool.shutdownNow() then another awaitTermination to at least limit the termination time to 2*60 seconds?
> This would at least have some bound to shutting stuff down.
--
This message was sent by Atlassian Jira
(v8.20.7#820007)
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org