Here's the fix proposal is attached https://issues.apache.org/jira/browse/SOLR-13126 appreciate reviews and opinions. I can push it quite soon if there's no veto.
On Wed, Feb 13, 2019 at 9:59 PM Burgmans, Tom < tom.burgm...@wolterskluwer.com> wrote: > I like to bump this issue up, since this is a showstopper for us to > upgrade from Solr 6. In https://issues.apache.org/jira/browse/SOLR-13126 > I described a couple of more use cases in which this bug appears. We see > different scores in the EXPLAIN compared to the actual scores and our > analysis is that the EXPLAIN in fact is correct. It happens when a > multiplicative boost is used (via the "boost" parameter) in combination > with some function queries, like "query" and "field". > > One example (tested on Solr 7.5.0), when running: > > http://localhost:8983/solr/test/select?defType=edismax&fl=id,score,[explain > style=text]&q=*:*&boost=sum(field(price),4) > > then the expectation is that a document that doesn't have the price field > gets a score of 4. The result however is: > > { > "id": "docid123576", > "score": 1.0, > "[explain]": "4.0 = product of:\n 1.0 = boost\n 4.0 = product of:\n > 1.0 = *:*\n 4.0 = sum(float(price)=0.0,const(4))\n" > } > > EXPLAIN and score are not consistent. > > Best regards Tom > > > -----Original Message----- > From: Tobias Ibounig [mailto:t.ibou...@netconomy.net] > Sent: dinsdag 22 januari 2019 10:14 > To: solr-user@lucene.apache.org > Subject: Multiplicative Boosts broken since 7.3 (LUCENE-8099) > > Hello, > > As described in > https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fissues.apache.org%2Fjira%2Fbrowse%2FSOLR-13126&data=02%7C01%7Ctom.burgmans%40wolterskluwer.com%7C82b7f7923bd74285295e08d68049f3da%7C8ac76c91e7f141ffa89c3553b2da2c17%7C0%7C0%7C636837452448856240&sdata=paFEStnQwxcKQQ9mM1MfPXQm%2BrStTaqQnYFH2LolVl8%3D&reserved=0 > multiplicative boots (in certain conditions) seem to be broken since 7.3. > The error seems to be introduced in > https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fissues.apache.org%2Fjira%2Fbrowse%2FLUCENE-8099&data=02%7C01%7Ctom.burgmans%40wolterskluwer.com%7C82b7f7923bd74285295e08d68049f3da%7C8ac76c91e7f141ffa89c3553b2da2c17%7C0%7C0%7C636837452448856240&sdata=Gs1EzQ%2FCSO8ryZJv0EGx2etxmDA7HkW8Crj5H6mE%2FvE%3D&reserved=0. > Reverting the SOLR parts to the now deprecated BoostingQuery again fixes > the issue. > The filed issue contains a test case and a patch with the revert (for > testing purposes, not really a clean fix). > We sadly couldn't find the actual issue, which seems to lie with the use > of "FunctionScoreQuery" for boosting. > > We were able to patch our 7.5 installation with the patch. As others might > be affected as well, we hope this can be helpful in resolving this bug. > > To all SOLR/Lucene developers, thank you for your work. Looking trough the > code base gave me a new appreciation of your work. > > Best Regards, > Tobias > > PS: This issue was already posted by a colleague, "Inconsistent debugQuery > score with multiplicative boost", but I wanted to create a new post with a > clearer title. > > -- Sincerely yours Mikhail Khludnev