[ https://issues.apache.org/jira/browse/LUCENE-4245?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Uwe Schindler updated LUCENE-4245: ---------------------------------- Attachment: LUCENE-4245.patch Here my idea of a patch, there is still a crazy test missing enforcing an interrupt to the merge thread: - It changes the finishMerges() in closeInternal to a loop that repeats until the call succeeded and did not throw ThreadInterruptedException. - After the first one was interrupted, all later invocations will pass waitForMerges = false, so CMS shuts down ASAP (but could still be interrupted, so we have to do this in loop). - After loop has finished, we rethrow the first ThreadInterruptedException & close the merge scheduler for safety. > IndexWriter#close(true) should either not be interruptible or should abort > background merge threads before returning > -------------------------------------------------------------------------------------------------------------------- > > Key: LUCENE-4245 > URL: https://issues.apache.org/jira/browse/LUCENE-4245 > Project: Lucene - Core > Issue Type: Bug > Components: core/index > Reporter: Mark Miller > Priority: Minor > Attachments: LUCENE-4245.patch > > > Currently, there is no safe way to close a directory after closing the writer > without causing an exception in a merge thread if the #close call is > interrupted. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org