Solr 7.3, FunctionScoreQuery no longer displays debug output

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

Solr 7.3, FunctionScoreQuery no longer displays debug output

Markus Jelsma-2
Hi,

Is this a known problem? For example, the following query:
q=australia&debug=true&boost=if(exists(query($bqlang)),2,1)&bqlang=lang:en&defType=edismax&qf=content_en content_ro

returns the following toString for 7.2.1:
boost(+(Synonym(content_en:australia content_en:australia) | Synonym(content_ro:austral content_ro:australia)),if(exists(query(lang:en,def=0.0)),const(2),const(1)))

7.3:
FunctionScoreQuery(+(Synonym(content_en:australia content_en:australia) | Synonym(content_ro:austral content_ro:australia)), scored by boost(if(exists(query(lang:en,def=0.0)),const(2),const(1))))

and the following debug output for 7.2.1:

11.226025 = boost((Synonym(content_en:australia content_en:australia) | Synonym(content_ro:austral content_ro:australia)),if(exists(query(lang:en,def=0.0)),const(2),const(1))), product of:
  11.226025 = max of:
    11.226025 = weight(Synonym(content_ro:austral content_ro:australia) in 6761) [SchemaSimilarity], result of:
      11.226025 = score(doc=6761,freq=18.0 = termFreq=18.0
), product of:
        5.442921 = idf(docFreq=193, docCount=44720)
        2.0625 = tfNorm, computed as (freq * (k1 + 1)) / (freq + k1) from:
          18.0 = termFreq=18.0
          1.2 = parameter k1
          0.0 = parameter b (norms omitted for field)
  1.0 = if(exists(query(lang:en,def=0.0)=0.0),const(2),const(1))

but for 7.3 i get only:

11.226025 = product of:
  1.0 = boost
  11.226025 = boost(if(exists(query(lang:en,def=0.0)),const(2),const(1)))

The scores are still the same, but the debug output is useless. Removing the boost fixes the problem of debug output immediately.

Thanks,
Markus