On Sat, Feb 25, 2012 at 3:39 PM, Jamie Johnson <jej2...@gmail.com> wrote:
> "Unfortunately, Apache Solr still uses this horrible code in a lot of
> places, leaving us with a major piece of work undone. Major parts of
> Solr’s facetting and filter caching need to be rewritten to work per
> atomic segment! For those implementing plugins or other components for
> Solr, SolrIndexSearcher exposes a “atomic view” of its underlying
> reader via SolrIndexSearcher.getAtomicReader()."

Some of this is just a misunderstanding, and some of it is a
difference of opinion.

Solr uses a top-level FieldCache entry for certain types of faceting,
but it's optional. Solr can also use per-segment FieldCache entries
when faceting.  The reason we haven't removed the top-level FieldCache
faceting is that it's faster unless you are doing near-realtime (NRT)
search (due to the cost of merging terms across segments).  Top level
fieldcache entries are also more memory efficient for Strings as
string values are not repeated across each segment.  The right
approach depends on the specific use-case, and Solr will continue to
strive to have faceting algorithms optimized for both NRT and non-NRT.

-Yonik
lucenerevolution.com - Lucene/Solr Open Source Search Conference.
Boston May 7-10

Reply via email to