Details
-
Improvement
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
9.0
-
None
-
None
-
New
Description
IndexOrDocValuesQuery can automatically use dvQueries when the cost > 8 *l eadcost, And the LRUQueryCache skips cache building when cost > 250(By default) * leadcost. There is a gap between 8 and 250, which means if the factor is just between 8 and 250 (e.g. cost = 10 * leadcost), the IndexOrDocValueQuery will choose the dvQueries but LRUQueryCache still build cache for it.
IndexOrDocValuesQuery aims to speed up queries when the leadcost is small, but building cache by dvScorers can make it meaningless because it needs to scan all the docvalues. This can be rather slow for big segments, so maybe we should skip the cache building for IndexOrDocValuesQuery when it chooses dvQueries.
Attachments
Issue Links
- links to