Yubin Kim created LUCENE-5221:
---------------------------------
Summary: SimilarityBase.computeNorm is inconsistent with
TFIDFSimilarity
Key: LUCENE-5221
URL: https://issues.apache.org/jira/browse/LUCENE-5221
Project: Lucene - Core
Issue Type: Bug
Components: core/search
Affects Versions: 4.4
Reporter: Yubin Kim
{{SimilarityBase.computeNorm}} Javadoc indicates that the doc length should be
encoded in the same way as {{TFIDFSimilarity}}. However, when
{{discountOverlaps}} is {{false}}, what gets encoded is
{{SmallFloat.floatToByte315((boost / (float) Math.sqrt(docLen / boost)));}}
rather than {{SmallFloat.floatToByte315((boost / (float)
Math.sqrt(length)));}} due to the extra {{/ state.getBoost()}} term in
{{SimilarityBase.computeNorm}}:
/** Encodes the document length in the same way as {@link TFIDFSimilarity}. */
@Override
public long computeNorm(FieldInvertState state) {
final float numTerms;
if (discountOverlaps)
numTerms = state.getLength() - state.getNumOverlap();
else
numTerms = state.getLength() */ state.getBoost();*
return encodeNormValue(state.getBoost(), numTerms);
}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]