Hi SOLR Community,

I have a question about cache implementations based on some seemingly
inconsistent documentation I'm looking at. I'm currently inquiring about
8.3, but more generally about solr version 8 too for upgrade planning.

In the description in the docs for cache implementations says
<https://lucene.apache.org/solr/guide/8_3/query-settings-in-solrconfig.html#cache-implementations>

[The caffeine] cache implementation is recommended over other legacy caches
as it usually offers [good stuff].

On the other hand, down in the actual filter cache section says

The filter cache uses a specialized cache named as FastLRUCache which is
optimized for fast concurrent access with the trade-off that writes and
evictions are costlier than the LRUCache used for query result cache and
document cache.

This implies the FastLRU cache is the only option as the documentation
doesn't say "defaults to a specialized cache" but rather states it in a way
to imply necessity. Even if we assume that was not intended, it does imply
that the FastLRU cache is the only one suited to the Filter Cache. Further,
the documentation in the SOLR config says yet another thing, that you can
use FastLRU or LRU only
<https://github.com/apache/lucene-solr/blob/branch_8_8/solr/server/solr/configsets/sample_techproducts_configs/conf/solrconfig.xml>

class - the SolrCache implementation LRUCache or
               (LRUCache or FastLRUCache)


Can you help me untangle this to understand the following:

(a) At what version did the caffeine cache reach production stability?
(b) Is the caffeine cache, and really all implementations, able to be used
on any cache, or are the restrictions about which cache implementations may
be used for which cache? If the latter, can you provide some guidance?

Disclaimer: I'm not asking which caches will be fastest for my
applications. I know that you can't know that ;) Rather, I want to be sure
which production version reached production stability (esp. for the filter
cache).

Thanks!
Stephen

Reply via email to