Issue
When using the Signals Stage in a query pipeline with scaleRange configured to [0 TO 1], the resulting boost scores may exceed the expected maximum value. Some documents receive boost values greater than 1, or values are expressed in scientific notation (e.g., 6.0E-4), which may affect how Solr interprets the score.
This results in search documents being ranked unexpectedly, as Solr may not handle scientific notation in boost values as intended.
Diagnosis
This issue can be confirmed by inspecting the debug response from a query with debug=true. Look for boosted values in the response such as:
ConstantScore(code:xyz)^7.0
ConstantScore(code:pqr)^6.0
...
ConstantScore(code:abc)^0.0If boosts exceed the configured max (e.g., 1) or appear in exponential format (e.g., ^6.0E-4), the issue is likely related to how Solr handles the computed values from the scaleRange output.
Environment
Fusion 5.9.12
Self-hosted deployment on Azure Kubernetes Service (AKS)
Issue appears during use of the default query pipeline with default roll-up strategy (max) and default final weight expression.
Cause
When using scaleRange=[0 TO 1], low signal weights in the aggregated signals collection can produce extremely small float values. These values are sometimes returned in scientific notation (e.g., ^6.0E-4), which may not be interpreted correctly by Solr’s scoring logic. As a result, documents may receive boost values outside of the intended range.
Resolution
To avoid this behavior, update the scaleRange in the Signals stage configuration to exclude 0 as the minimum value.
Recommended configuration changes:
Replace
scaleRange=[0 TO 1]
With:scaleRange=[0.1 TO 1]orscaleRange=[0.01 TO 1]
This adjustment ensures that very small weights are scaled into a range that avoids scientific notation and produces stable, interpretable boost values in Solr.
You can further verify correct behavior by:
Running the
signal_aggregationjob to confirm updated scores.Comparing ranks of documents in the signals index vs. search results.
Using debug queries to confirm scale boost values are within expected range and not in scientific notation.
If further inconsistencies appear in rankings despite this adjustment, inspect the weight distribution in the aggregated_signals collection and consider adjusting the roll-up strategy or final weight expression accordingly.