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

IW.getReader() returns inconsistent reader on RT Branch

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • Realtime Branch
    • Realtime Branch
    • core/index
    • None
    • New, Patch Available

    Description

      I extended the testcase TestRollingUpdates#testUpdateSameDoc to pull a NRT reader after each update and asserted that is always sees only one document. Yet, this fails with current branch since there is a problem in how we flush in the getReader() case. What happens here is that we flush all threads and then release the lock (letting other flushes which came in after we entered the flushAllThread context, continue) so that we could concurrently get a new segment that transports global deletes without the corresponding add. They sneak in while we continue to open the NRT reader which in turn sees inconsistent results.

      I will upload a patch soon

      Attachments

        1. LUCENE-3028.patch
          22 kB
          Simon Willnauer
        2. LUCENE-3028.patch
          22 kB
          Simon Willnauer
        3. realtime-1.txt
          47 kB
          selckin

        Issue Links

          Activity

            People

              simonw Simon Willnauer
              simonw Simon Willnauer
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: