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

Michael McCandless resolved LUCENE-2782.
----------------------------------------

    Resolution: Fixed

> Possible rare thread hazard in IW.commit
> ----------------------------------------
>
>                 Key: LUCENE-2782
>                 URL: https://issues.apache.org/jira/browse/LUCENE-2782
>             Project: Lucene - Java
>          Issue Type: Bug
>            Reporter: Michael McCandless
>            Assignee: Michael McCandless
>             Fix For: 2.9.4, 3.0.3, 3.1, 4.0
>
>
> I was seeing a very rare intermittent failure in 
> TestIndexWriter.testCommitThreadSafety.
> The issue happens if one thread calls commit while another is flushing, and 
> is exacerbated at high flush rates (eg maxBufferedDocs=2).  The thread doing 
> commit will first flush, and then it syncs the files.  However in between 
> those two, if other threads manage to add enough docs and trigger another 
> flush, a 2nd new segment can sneak into the SegmentInfos before we sync.
> This is normally harmless, in that it just means the commit includes a few 
> more docs that had been added by other threads, so it's fine. But, it can 
> mean that a committed segment references the still-open doc store files.  Our 
> tests now catch this (I changed MockDirWrapper to throw an exception in this 
> case), and so testCommitThreadSafety can fail with this exception.  If you 
> hardwire the maxBufferedDocs to 2 it happens quite often.
> It's not clear this is really a problem in real apps vs just our anal 
> MockDirWrapper but I think we should fix it...

-- 
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