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

Complete overhaul of FieldCache API/Implementation

Details

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

    Description

      Motivation:
      1) Complete overhaul the API/implementation of "FieldCache" type things...
      a) eliminate global static map keyed on IndexReader (thus
      eliminating synch block between completley independent IndexReaders)
      b) allow more customization of cache management (ie: use
      expiration/replacement strategies, disk backed caches, etc)
      c) allow people to define custom cache data logic (ie: custom
      parsers, complex datatypes, etc... anything tied to a reader)
      d) allow people to inspect what's in a cache (list of CacheKeys) for
      an IndexReader so a new IndexReader can be likewise warmed.
      e) Lend support for smarter cache management if/when
      IndexReader.reopen is added (merging of cached data from subReaders).
      2) Provide backwards compatibility to support existing FieldCache API with
      the new implementation, so there is no redundent caching as client code
      migrades to new API.

      Attachments

        1. ExtendedDocument.java
          16 kB
          Robert Newson
        2. fieldcache-overhaul.032208.diff
          145 kB
          Mark Miller
        3. fieldcache-overhaul.diff
          49 kB
          Chris M. Hostetter
        4. fieldcache-overhaul.diff
          49 kB
          Chris M. Hostetter
        5. LUCENE-831.03.28.2008.diff
          202 kB
          Mark Miller
        6. LUCENE-831.03.30.2008.diff
          216 kB
          Mark Miller
        7. LUCENE-831.03.31.2008.diff
          245 kB
          Mark Miller
        8. LUCENE-831.patch
          122 kB
          Mark Miller
        9. LUCENE-831.patch
          122 kB
          Mark Miller
        10. LUCENE-831.patch
          108 kB
          Mark Miller
        11. LUCENE-831.patch
          105 kB
          Mark Miller
        12. LUCENE-831.patch
          102 kB
          Mark Miller
        13. LUCENE-831.patch
          85 kB
          Mark Miller
        14. LUCENE-831.patch
          88 kB
          Mark Miller
        15. LUCENE-831.patch
          142 kB
          Mark Miller
        16. LUCENE-831.patch
          183 kB
          Mark Miller
        17. LUCENE-831.patch
          183 kB
          Mark Miller
        18. LUCENE-831.patch
          179 kB
          Mark Miller
        19. LUCENE-831.patch
          174 kB
          Mark Miller
        20. LUCENE-831.patch
          173 kB
          Mark Miller
        21. LUCENE-831.patch
          157 kB
          Mark Miller
        22. LUCENE-831-trieimpl.patch
          8 kB
          Uwe Schindler

        Issue Links

          Activity

            People

              Unassigned Unassigned
              hossman Chris M. Hostetter

              Dates

                Created:
                Updated:

                Slack

                  Issue deployment