Uploaded image for project: 'Solr'
  1. Solr
  2. SOLR-3393

Implement an optimized LFUCache

    Details

    • Type: Improvement
    • Status: Open
    • Priority: Minor
    • Resolution: Unresolved
    • Affects Version/s: 3.6, 4.0-ALPHA
    • Fix Version/s: 4.9, 6.0
    • Component/s: search
    • Labels:
      None

      Description

      SOLR-2906 gave us an inefficient LFU cache modeled on FastLRUCache/ConcurrentLRUCache. It could use some serious improvement. The following project includes an Apache 2.0 licensed O(1) implementation. The second link is the paper (PDF warning) it was based on:

      https://github.com/chirino/hawtdb
      http://dhruvbird.com/lfu.pdf

      Using this project and paper, I will attempt to make a new O(1) cache called FastLFUCache that is modeled on LRUCache.java. This will (for now) leave the existing LFUCache/ConcurrentLFUCache implementation in place.

        Attachments

        1. SOLR-3393-trunk-withdecay.patch
          96 kB
          Shawn Heisey
        2. SOLR-3393-4x-withdecay.patch
          96 kB
          Shawn Heisey
        3. SOLR-3393.patch
          93 kB
          Adrien Grand
        4. SOLR-3393.patch
          77 kB
          Adrien Grand
        5. SOLR-3393.patch
          67 kB
          Hoss Man
        6. SOLR-3393.patch
          68 kB
          Shawn Heisey
        7. SOLR-3393.patch
          64 kB
          Shawn Heisey
        8. SOLR-3393.patch
          59 kB
          Shawn Heisey
        9. SOLR-3393.patch
          60 kB
          Shawn Heisey

          Issue Links

            Activity

              People

              • Assignee:
                elyograg Shawn Heisey
                Reporter:
                elyograg Shawn Heisey
              • Votes:
                4 Vote for this issue
                Watchers:
                12 Start watching this issue

                Dates

                • Created:
                  Updated: