Uploaded image for project: 'Lucene - Core'
  1. Lucene - Core
  2. LUCENE-1376

sometimes if a BG merge hits an exception, optimize() will fail to forward the exception

Attach filesAttach ScreenshotVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Trivial
    • Resolution: Fixed
    • 2.3
    • 2.4
    • core/index
    • None
    • New

    Description

      I was seeing an intermittant failure, only on a Windows instance running inside VMWare, of TestIndexWriter.testAddIndexOnDiskFull.

      It is happening because the while loop that checks for merge exceptions that had occurred during optimize fails to catch the case where all the BG optimize merges completed (or hit exceptions) before the while loop begins. IE, all BG threads finished before the FG thread advanced to the while loop. In that case the code fails to check if there were any exceptions.

      The fix is straightforward: change the while loop so that it always checks, at least once, whether there were exceptions.

      Attachments

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            mikemccand Michael McCandless
            mikemccand Michael McCandless
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Issue deployment