I'm doing a lot of filter query in fq. My search is something like
'q=*:*&fq=..function on a few fields..' . Do I need to only index those
field and use FL to get other result or do I need to index everything?
This isn’t quite right. The fields do _not_ need indexed=true if (and only if) they
have docValues=true in order to use function queries. But it’ll consume lots of
In fact, depending on the version of Solr (which you have not told us), it’s even
possible to search on a field with docValues=true indexed=false. But it’s extremely
Which causes you problems when you extrapolate from small data sets to
production. Something that works fine with 100K docs blows up when you
start putting 10M docs in.
So here’s the rule, for efficiency (both run-time and memory):
1> indexed=“true” for anything you search on. I.e. q=field:value or even fq=field:value
2> docValues=“true” for anything you use for function queries, sorting, grouping, or faceting.
Of course you can specify both for any given field.
> On Mar 13, 2020, at 8:29 AM, Nicolas Franck <[hidden email]> wrote:
> every field you query has to be "indexed"
> every field you need to be returned in the response has to be "stored"
> the parameter "fl" can only return fields that are "stored". Other fields
> given are simply ignored.
>> On 13 Mar 2020, at 13:15, GTHell <[hidden email]> wrote:
>> I'm doing a lot of filter query in fq. My search is something like
>> 'q=*:*&fq=..function on a few fields..' . Do I need to only index those
>> field and use FL to get other result or do I need to index everything?
>> Sent from: https://lucene.472066.n3.nabble.com/Solr-User-f472068.html >