Each 'fq' clause is it's own cache key.

1. fq=foo:bar OR foo:baz
    => one entry in filter cache

2. fq=foo:bar&fq=foo:baz
   => two entries in filter cache, will not use cached entry from #1

3. fq=foo:bar
 => One entry, will use cached entry from #2

4. fq=foo:bar
  => One entry, will use cached entry from #2.

So if you do queries in succession using each of those four fq's in order, you will wind up with 3 entries in the cache.

Note that "fq=foo:bar OR foo:baz" is not semantically identical to "fq=foo&fq=bar". Rather that latter is semantically identical to "fq=foo:bar AND foo:baz". But "fq=foo&fq=bar" will be two cache entries, and "fq=foo:bar AND foo:baz" will be one cache entry, and the two won't share any cache entries.


On 1/5/2011 3:17 PM, Em wrote:
Hi,

while reading through some information on the list and in the wiki, i found
out that something is missing:

When I specify a filter queries like this

fq=foo:bar OR foo:baz
or
fq=foo:bar&fq=foo:baz
or
fq=foo:bar
or
fq=foo:baz

How many filter query entries will be cached?
Two, since there are two filters (foo:bar, foo:baz) or 3, since there are
three different combinations (foo:bar OR foo:baz, foo:bar, foo:baz)?

Thank you!

Reply via email to