You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Michael McCandless (JIRA)" <ji...@apache.org> on 2009/03/26 20:40:50 UTC

[jira] Updated: (LUCENE-1573) IndexWriter does not do the right thing when a Thread is interrupt()'d

     [ https://issues.apache.org/jira/browse/LUCENE-1573?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Michael McCandless updated LUCENE-1573:
---------------------------------------

    Attachment: LUCENE-1573.patch

Attached patch.  All tests pass, including a new one that showed the deadlock.

I also found & fixed a case where IndexWriter would hang during close (thinking a BG merge was still running when it wasn't) if the InterruptedException arrived at the right time.

I'll commit in a day or two.

> IndexWriter does not do the right thing when a Thread is interrupt()'d
> ----------------------------------------------------------------------
>
>                 Key: LUCENE-1573
>                 URL: https://issues.apache.org/jira/browse/LUCENE-1573
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: Index
>    Affects Versions: 1.9, 2.0.0, 2.1, 2.2, 2.3, 2.3.1, 2.3.2, 2.4, 2.4.1
>            Reporter: Michael McCandless
>            Assignee: Michael McCandless
>            Priority: Minor
>             Fix For: 2.9
>
>         Attachments: LUCENE-1573.patch
>
>
> Spinoff from here:
>     http://www.nabble.com/Deadlock-with-concurrent-merges-and-IndexWriter--Lucene-2.4--to22714290.html
> When a Thread is interrupt()'d while inside Lucene, there is a risk currently that it will cause a spinloop and starve BG merges from completing.
> Instead, when possible, we should allow interruption.  But unfortunately for back-compat, we will need to wrap the exception in an unchecked version.  In 3.0 we can change that to simply throw InterruptedException.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-dev-help@lucene.apache.org