lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Peter Keegan (JIRA)" <>
Subject [jira] Created: (LUCENE-991) BoostingTermQuery.explain() bugs
Date Fri, 31 Aug 2007 14:36:31 GMT
BoostingTermQuery.explain() bugs

                 Key: LUCENE-991
             Project: Lucene - Java
          Issue Type: Bug
          Components: Search
    Affects Versions: 2.2
            Reporter: Peter Keegan
            Priority: Minor
         Attachments: TestBoostingTermQuery.patch

There are a couple of minor bugs in BoostingTermQuery.explain().

1. The computation of average payload score produces NaN if no payloads were found. It should
probably be:
float avgPayloadScore = super.score() * (payloadsSeen > 0 ? (payloadScore / payloadsSeen)
: 1);

2. If the average payload score is zero, the value of the explanation is 0:
result.setValue(nonPayloadExpl.getValue() * avgPayloadScore);
If the query is part of a BooleanClause, this results in:
"no match on required clause..."
"failure to meet condition(s) of required/prohibited clause(s)"

The average payload score can be zero if the field boost = 0.

I've attached a patch to '', however, the test 'testNoPayload' fails
in 'SpanScorer.score()' because the doc = -1. It looks like 'setFreqCurrentDoc() should have
been called before 'score()'. Maybe someone more knowledgable of spans could investigate this.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message