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

When loading FieldCache terms index, make terms data optional

Details

    • Improvement
    • Status: Open
    • Major
    • Resolution: Unresolved
    • None
    • 4.9, 6.0
    • core/search
    • None
    • New

    Description

      Spinoff of LUCENE-2380.

      Now, when you load the terms index (FC.getTermsIndex), it loads two
      arrays, ord (maps docID -> ord) and lookup (maps ord -> term).

      But sometimes you don't need the lookup map (and, it's often very
      costly in RAM usage, much moreso than the ord map).

      EG if your index is a single segment, and your app doesn't need the
      values (LUCENE-2335).

      Or, if you use a sort comparator that resolves ord -> term and v/v (eg
      using terms dict).

      So we should make it optional...

      Also, similarly, we could merge getTerms/getTermsIndex. It's
      dangerous today if you load terms and then termsIndex because you're
      wasting tons of RAM; it'd be nicer if we could have a single cache
      entry that'd "upgrade" itself to be an index (have the ords). This
      single entry could then serve ords, ords+terms, or just terms.

      Attachments

        Activity

          People

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

            Dates

              Created:
              Updated: