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

clean up booleanquery conjunction optimizations a bit

    Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 4.9, 6.0
    • Component/s: None
    • Labels:
      None
    • Lucene Fields:
      New

      Description

      After LUCENE-3505, I want to do a slight cleanup:

      • compute the term conjunctions optimization in scorer(), so its applied even if we have optional and prohibited clauses that dont exist in the segment (e.g. return null)
      • use the term conjunctions optimization when optional.size() == minShouldMatch, as that means they are all mandatory, too.
      • don't return booleanscorer1 when optional.size() == minShouldMatch, because it means we have required clauses and in general BS2 should do a much better job (e.g. use advance).

        Attachments

        1. LUCENE-4236.patch
          6 kB
          Robert Muir
        2. LUCENE-4236.patch
          6 kB
          Robert Muir
        3. LUCENE-4236.patch
          46 kB
          Robert Muir
        4. LUCENE-4236.patch
          73 kB
          Robert Muir
        5. LUCENE-4236.patch
          35 kB
          Robert Muir
        6. LUCENE-4236.patch
          35 kB
          Robert Muir

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                rcmuir Robert Muir
              • Votes:
                0 Vote for this issue
                Watchers:
                5 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: