Details
-
Improvement
-
Status: Resolved
-
Major
-
Resolution: Duplicate
-
4.0-ALPHA
-
None
-
None
-
None
-
New
Description
This is just an idea for discussion (I have not yet thought everything through: know of a non-scary way to do the patch yet).
But I think that it would be useful for ScorerContext to specify something like 'docsOnly', e.g. ConstantScoreQuery could pass this down here:
disi = innerWeight.scorer(context, scorerContext);
Basically this flag would specify that the caller does not care about freq() and score(), and in this case e.g. TermScorer could use a
docs-only bulkpostings for example, and never pull freqs.
Additionally, it wouldn't need to create a Similarity.DocScorer, which is just wastefully computing score cache in this case,
it could instead pass null, creat a scorer that does not use one, or use a Constant impl that always returns 1 or throws UOE,
depending on how we want to specify that score()/freq() should act if the caller does actually call it when this flag is set.