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

Uwe Schindler commented on LUCENE-7395:
---------------------------------------

My proposal is to add a second abstarct method like the protected {{get()}}: 
[https://lucene.apache.org/core/6_1_0/core/org/apache/lucene/search/similarities/PerFieldSimilarityWrapper.html#get-java.lang.String-]

In that case it could be named {{abstract Similarity default()}}.

> Query Norm and coordination factor not calculated when 
> PerFieldSimilarityWrapper is used 
> -----------------------------------------------------------------------------------------
>
>                 Key: LUCENE-7395
>                 URL: https://issues.apache.org/jira/browse/LUCENE-7395
>             Project: Lucene - Core
>          Issue Type: Bug
>    Affects Versions: 5.3.1, 5.4.1
>            Reporter: Sascha Markus
>
> If any kind of similarity is defined and therefore the 
> SchemaSimilarityFactory is defined as global similarity the queryNorm is 
> always 1.0
> The PerFieldSimilarityWrapper delegates some of the methods to the desired 
> Similarity but misses to delegate public float queryNorm(float 
> valueForNormalization)
> Instead the IndexReader calls this method on the base class Similarity.
> The result is that all scores are much higher.
> I created a custom similarity which extends ClassicSimilarity.
> To have the calculation fixed I did a local "hotfix"  which always uses the 
> default similarity. Also wrong for some cases but fine in my scenario.
>   @Override
>   public float queryNorm(float valueForNormalization) {
>     return get("").queryNorm(valueForNormalization); // use default 
> similarity to calculate
>   }



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org

Reply via email to