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

Move FieldCache to IndexReader

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Won't Fix
    • Affects Version/s: None
    • Fix Version/s: 3.6, 4.0-ALPHA
    • Component/s: None
    • Labels:
      None
    • Lucene Fields:
      New

      Description

      Move the static FieldCache.DEFAULT field instance to atomic IndexReaders, so that FieldCache insanity caused by the WeakHashMap no longer occurs.

      • Add a new method to IndexReader that by default throws an UOE:
        public FieldCache getFieldCache()
      • The SegmentReader implements this method and returns its own internal FieldCache implementation. This implementation just uses a HashMap<Entry<T>,Object>> to store entries.
      • The SlowMultiReaderWrapper implements this method as well and basically behaves the same as the current FieldCacheImpl.

      This issue won't solve the insanity that comes from inconsistent usage of a single field (for example retrieve both int[] and DocTermIndex for the same field).

        Attachments

        1. LUCENE-3360.patch
          24 kB
          Martijn van Groningen
        2. LUCENE-3360.patch
          78 kB
          Martijn van Groningen
        3. LUCENE-3360.patch
          79 kB
          Martijn van Groningen
        4. LUCENE-3360.patch
          96 kB
          Martijn van Groningen
        5. LUCENE-3360.patch
          95 kB
          Martijn van Groningen
        6. LUCENE-3360-3x.patch
          103 kB
          Martijn van Groningen
        7. LUCENE-3360.patch
          96 kB
          Martijn van Groningen
        8. LUCENE-3360.patch
          305 kB
          Martijn van Groningen
        9. LUCENE-3360-3x.patch
          110 kB
          Martijn van Groningen
        10. LUCENE-3360-3x.patch
          149 kB
          Martijn van Groningen

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                martijn.v.groningen Martijn van Groningen
              • Votes:
                2 Vote for this issue
                Watchers:
                5 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: