Lucene - Core
  1. Lucene - Core
  2. LUCENE-2136

MultiReader should not use PQ for its Term/sEnum if it has only 1 reader

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 4.0-ALPHA
    • Component/s: core/index
    • Labels:
      None
    • Lucene Fields:
      New

      Description

      Related to LUCENE-2130....

      Even though we've switched to segment-based searching, there are still times when the Term/sEnum is used against the top-level reader. I think Solr does this, and from LUCENE-2130, certain rewrite modes of MTQ will do this as well.

      Currently, on an optimized index, MTQ is still using a PQ to present the terms, which is silly because this just adds a sizable amount of overhead. In such cases we should simply delecate to the single segment.

      Note that the single segment can have deletions, and we should still delegate. Ie, the index need not be optimized, just have a single segment.

      1. LUCENE-2136-trunk.patch
        4 kB
        Michael McCandless
      2. LUCENE-2136-flex.patch
        3 kB
        Michael McCandless

        Activity

        Hide
        Michael McCandless added a comment -

        Patch for trunk.

        Show
        Michael McCandless added a comment - Patch for trunk.
        Hide
        Uwe Schindler added a comment -

        +1
        looks good and is really simple.

        Show
        Uwe Schindler added a comment - +1 looks good and is really simple.
        Hide
        Michael McCandless added a comment -

        I have flex version coming shortly, then I'll commit.

        Show
        Michael McCandless added a comment - I have flex version coming shortly, then I'll commit.
        Hide
        Michael McCandless added a comment -

        Flex version of patch. I only patched flex APIs here.... on next merge from trunk we'll pull fix for non-flex over.

        Show
        Michael McCandless added a comment - Flex version of patch. I only patched flex APIs here.... on next merge from trunk we'll pull fix for non-flex over.

          People

          • Assignee:
            Michael McCandless
            Reporter:
            Michael McCandless
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development