[ https://issues.apache.org/jira/browse/LUCENE-4080?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13403017#comment-13403017 ]
Adrien Grand commented on LUCENE-4080: -------------------------------------- @Robert I think this is an issue since one must hold the IndexWriter lock to perform deletes on any segment (cf. assert Thread.holdsLock(writer); in ReadersAndLiveDocs.delete). @Michael Oh right, I think I understand what you mean. I'll try to produce a better patch. > SegmentReader.numDeletedDocs() sometimes gives an incorrect numDeletedDocs > -------------------------------------------------------------------------- > > Key: LUCENE-4080 > URL: https://issues.apache.org/jira/browse/LUCENE-4080 > Project: Lucene - Java > Issue Type: Bug > Components: core/index > Affects Versions: 4.0, 4.1 > Reporter: Adrien Grand > Priority: Trivial > Fix For: 4.1 > > Attachments: LUCENE-4080.patch, LUCENE-4080.patch > > > At merge time, SegmentReader sometimes gives an incorrect value for > numDeletedDocs. > From LUCENE-2357: > bq. As far as I know, [SegmenterReader.numDeletedDocs() is] only unreliable > in this context (SegmentReader passed to SegmentMerger for merging); this is > because we allow newly marked deleted docs to happen concurrently up until > the moment we need to pass the SR instance to the merger (search for "// Must > sync to ensure BufferedDeletesStream" in IndexWriter.java) ... but it would > be nice to fix that, so I think open a new issue (it won't block this one)? > We should be able to make a new SR instance, sharing the same core as the > current one but using the correct delCount... > bq. It would be cleaner (but I think hairier) to create a new SR for merging > that holds the correct delCount, but let's do that under the separate issue. > bq. it would be best if the SegmentReader's numDeletedDocs were always > correct, but, fixing that in IndexWriter is somewhat tricky. Ie, the fix > could be hairy but the end result ("SegmentReader.numDeletedDocs can always > be trusted") would be cleaner... -- 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