Replace TermsQuery with TermInSetQuery#169
Conversation
|
This results in a functionally different presearcher query than before. The existing tests don't show a problem but it is fairly easy to construct a TestMultipassPresearcher test where the query has multiple fields which should pass but doesn't. E.g. Two correct ways I have found:
My testing shows a slight performance advantage for option 2 (although I'm seeing an overall matching performance degradation of ~20% in going from 6.3 to 7.3 --- mostly in the search phase and not the presearcher phase. |
|
Can you add that test case at least? I wasn't convinced about this to be frank, but it passed the tests that were present. Can you paste up some alternative PRs for the 2 approaches? Though not ideal that 7.3 is generally slower than 6.3 :( |
|
PR #170 is my stab at a 7.3 port and uses option 1 above for replacing TermsQuery. mjustice3@d17bfd6 is a small patch on top of this PR for option 2. |
TermsQuery is removed in Lucene 7, so this replaces with TermInSetQuery (and Boolean wrapper where needed).
Tests pass on their own but seem to conflicy with the legacy numeric changes when both are merged in...