KeywordField.newSetQuery() to reuse prefixed terms in IndexOrDocValuesQuery#14435
KeywordField.newSetQuery() to reuse prefixed terms in IndexOrDocValuesQuery#14435mkhludnev merged 2 commits intoapache:mainfrom
Conversation
| return TermInSetQuery.newIndexOrDocValuesQuery( | ||
| MultiTermQuery.CONSTANT_SCORE_BLENDED_REWRITE, field, values); |
There was a problem hiding this comment.
Probably we can use TermInSetQuery.newIndexOrDocValuesQuery(field, values) here?
There was a problem hiding this comment.
Right. Just want to make it explicit.
There was a problem hiding this comment.
Then we don't need that method, right?
There was a problem hiding this comment.
I would agree with this. KeywordField#newSetQuery is the convenience method, so it's nice to not have to pass a rewrite, TermInSetQuery#newIndexOrDocValuesQuery is the expert method, and experts can figure out how they want their multi-term queries to be rewritten.
There was a problem hiding this comment.
We should remove the unused method TermInSetQuery#newIndexOrDocValuesQuery(String field, Collection<BytesRef> terms) in that case, as anyone invoking TermInSetQuery#newIndexOrDocValuesQuery should use the expert method TermInSetQuery#newIndexOrDocValuesQuery(RewriteMethod indexRewriteMethod, String field, Collection<BytesRef> terms)?
There was a problem hiding this comment.
ok. Got it. Since we add something, let's add as least as possible.
There was a problem hiding this comment.
Thanks for making the change. I know its minor, but important for keeping it clean!
| return TermInSetQuery.newIndexOrDocValuesQuery( | ||
| MultiTermQuery.CONSTANT_SCORE_BLENDED_REWRITE, field, values); |
There was a problem hiding this comment.
I would agree with this. KeywordField#newSetQuery is the convenience method, so it's nice to not have to pass a rewrite, TermInSetQuery#newIndexOrDocValuesQuery is the expert method, and experts can figure out how they want their multi-term queries to be rewritten.
…sQuery (apache#14435) * KeywordField.newSetQuery() reuses prefixed terms. fix apache#14425
fix #14425
Description