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

Michael McCandless resolved LUCENE-1270.
----------------------------------------

    Resolution: Fixed

Thanks Stu!

> After IW.addIndexesNoOptimize, IW.close may hang
> ------------------------------------------------
>
>                 Key: LUCENE-1270
>                 URL: https://issues.apache.org/jira/browse/LUCENE-1270
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: Index
>    Affects Versions: 2.3, 2.3.1
>            Reporter: Michael McCandless
>            Assignee: Michael McCandless
>            Priority: Minor
>             Fix For: 2.3.2, 2.4
>
>         Attachments: LUCENE-1270.patch
>
>
> Spinoff from here:
>   
> http://mail-archives.apache.org/mod_mbox/lucene-java-user/200804.mbox/[EMAIL 
> PROTECTED]
> The addIndexesNoOptimize method first merges eligible segments
> according to the MergePolicy, and then copies over one by one any
> remaining "external" segments.
> That copy can possibly (rather rarely) result in new merges becoming
> eligible because its size can change if the index being added was
> created with autoCommit=false.
> However, we fail to then invoke the MergeScheduler to run these
> merges.  As a result, in close, where we wait until all running and
> pending merges complete, we will never return.
> The fix is simple: invoke the merge scheduler inside
> copyExternalSegments() if any segments were copied.  I also added
> defensive invocation of the merge scheduler during close, just in case
> other code paths could allow for a merge to be added to the pending
> queue but not scheduled.

-- 
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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to