On 5/3/2016 11:58 PM, Bastien Latard - MDPI AG wrote: > Thank you for your email. > You said "have big caches or request big pages (e.g. 100k docs)"... > Does a fq cache all the potential results, or only the ones the query > returns? > e.g.: select?q=*:*&fq=bPublic:true&rows=10 > > => with this query, if I have 60 millions of public documents, would > it cache 10 or 60 millions of IDs? > ...and does it cache it the filter cache (from fq) in the OS cache or > in java heap?
The result of a filter query is a bitset. If the core contains 60 million documents, each bitset is 7.5 million bytes in length. It is not a list of IDs -- it's a large array of bits representing every document in the Lucene index, including deleted documents (the Max Doc value from the core overview). There are two values for each bit - 0 or 1, depending on whether each document matches the filter or not. Thanks, Shawn