[ 
https://issues.apache.org/jira/browse/SOLR-18416?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18113059#comment-18113059
 ] 

Chris M. Hostetter commented on SOLR-18416:
-------------------------------------------

It looks like this work _may_ not be need if we wait for Lucene 10.5.2: 
https://github.com/apache/lucene/pull/16654

> 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
>            Priority: Major
>         Attachments: SOLR-18416.patch
>
>
> 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]

Reply via email to