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