[ https://issues.apache.org/jira/browse/SOLR-16187?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Kevin Risden reassigned SOLR-16187: ----------------------------------- Assignee: Kevin Risden > 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 > Assignee: Kevin Risden > Priority: Major > Time Spent: 10m > Remaining Estimate: 0h > > 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-unsubscr...@solr.apache.org For additional commands, e-mail: issues-h...@solr.apache.org