lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Erik van Zijst (JIRA)" <j...@apache.org>
Subject [jira] Commented: (LUCENE-1474) Incorrect SegmentInfo.delCount when IndexReader.flush() is used
Date Thu, 21 May 2009 01:09:45 GMT

    [ https://issues.apache.org/jira/browse/LUCENE-1474?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12711444#action_12711444
] 

Erik van Zijst commented on LUCENE-1474:
----------------------------------------

Running with the patch applied doesn't seem to have changed anything. Is it possible the damage
to the index has already been done at this point?

Note that I'm running lucene on large index files that were taken from our production servers.
We've never seen these exception on these production servers, but then they do not run with
assertions enabled. Using these copied index files (safely copied while the product was not
running) on development machines consistently triggers this problem. I've not regenerated
the entire index on the development machine, for that would be hugely impractical.


> Incorrect SegmentInfo.delCount when IndexReader.flush() is used
> ---------------------------------------------------------------
>
>                 Key: LUCENE-1474
>                 URL: https://issues.apache.org/jira/browse/LUCENE-1474
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: Index
>    Affects Versions: 2.4
>            Reporter: Marcel Reutegger
>            Assignee: Michael McCandless
>             Fix For: 2.4.1, 2.9
>
>         Attachments: IndexReaderTest.java
>
>
> When deleted documents are flushed using IndexReader.flush() the delCount in SegmentInfo
is updated based on the current value and SegmentReader.pendingDeleteCount (introduced by
LUCENE-1267). It seems that pendingDeleteCount is not reset after the commit, which means
after a second flush() or close() of an index reader the delCount in SegmentInfo is incorrect.
A subsequent IndexReader.open() call will fail with an error when assertions are enabled.
E.g.:
> java.lang.AssertionError: delete count mismatch: info=3 vs BitVector=2
> 	at org.apache.lucene.index.SegmentReader.loadDeletedDocs(SegmentReader.java:405)
> [...]

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


Mime
View raw message