Chris M. Hostetter created SOLR-18416:
-----------------------------------------
Summary: Deal with VectorSimilarityQuery backcompat break in
Lucene 10.5
Key: SOLR-18416
URL: https://issues.apache.org/jira/browse/SOLR-18416
Project: Solr
Issue Type: Sub-task
Reporter: Chris M. Hostetter
Lucene 10.5.0 causes many Solr test failures involving the
{{VectorSimilarityQParser}}
These failures trace back to some backwards incompatible changes introduced in
Lucene 10.5.0 by [lucene#15784|https://github.com/apache/lucene/pull/15784],
that completely changed the meaning of some
{{(Float|Byte)VectorSimilarityQuery}} constructor arguments. As things stand
right now (on the SOLR-18395 branch), the {{minTraverse}} and {{minReturn}}
params provided by Solr users when using the {{VectorSimilarityQParser}}
provided radically incorrect results compared to how they are intended.
As much as I hate to say it: I think the best we can do in Solr, to avoid
propagating this backcompat break to Solr users, is to fork a bunch of Lucene's
VectorSimilarity related Query classes as of 10.4.0.
I've got a bare bones proof of concept patch that demonstrates the basics – and
gets the tests passing again.
To fully "move forward" I think we should start with this patch and then:
# Document that the {{minTraverse}} param of {{VectorSimilarityQParser}} is
deprecated.
# When {{minTraverse}} is specified, {{VectorSimilarityQParser}} should return
instances of the "forked" Query classes.
# Add a new {{decay}} param to {{{}VectorSimilarityQParser{}}}, that is
mutually exclusive with using the {{minTraverse}} param.
# When {{decay}} is specified, {{VectorSimilarityQParser}} should return
instances of the "official" Lucene Query classes
# If neither {{minTraverse}} nor {{decay}} is explicitly specified by the
user, then let the {{luceneMatchVersion}} drive the choice of whether the
"forked" classes should be used with the existing {{{}DEFAULT_MIN_TRAVERSE{}}},
or if the new "official" Lucene Query classes should be used with some new
{{DEFAULT_DECAY}} value.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]