lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Michael McCandless (JIRA)" <>
Subject [jira] Updated: (LUCENE-1198) Exception in DocumentsWriter.ThreadState.init leads to corruption
Date Sat, 01 Mar 2008 13:32:51 GMT


Michael McCandless updated LUCENE-1198:

    Attachment: LUCENE-1198.patch

Attached patch.  I added a unit test showing the issue.  To do this, I
added this method to IndexWriter:

  boolean testPoint(String name)

Then in DocumentsWriter.ThreadState.init I added this:

  assert writer.testPoint("DocumentsWriter.ThreadState.init start");

Then, tests can subclass IndexWriter and do interesting things at each
of these test points.  We can add further test points over time...

Then I fixed the issue and the tests (& all tests) pass.  I'll commit
in a day or two.

> Exception in DocumentsWriter.ThreadState.init leads to corruption
> -----------------------------------------------------------------
>                 Key: LUCENE-1198
>                 URL:
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: Index
>    Affects Versions: 2.3
>            Reporter: Michael McCandless
>            Assignee: Michael McCandless
>            Priority: Minor
>             Fix For: 2.4
>         Attachments: LUCENE-1198.patch
> If an exception is hit in the init method, DocumentsWriter incorrectly
> increments numDocsInRAM when in fact the document is not added.
> Spinoff of this thread:
> The root cause that led to the exception in init was actually due to
> incorrect use of Lucene's APIs (one thread still modifying the
> Document while IndexWriter.addDocument is adding it) but still we
> should protect against any exceptions coming out of init.

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:
For additional commands, e-mail:

View raw message