summaryrefslogtreecommitdiffstats
path: root/container-search/src/main/java
diff options
context:
space:
mode:
authorArne Juul <arnej@yahoo-inc.com>2017-08-31 10:02:21 +0000
committerArne Juul <arnej@yahoo-inc.com>2017-08-31 10:02:21 +0000
commitae01edaf6692d30e6206b2e6eae213f0c52a1ded (patch)
treeac6358404158488353b1deb95a1042bf6e63d41b /container-search/src/main/java
parent21219b0c636f219e239567e7f4bd7b536dbb9cbc (diff)
render infinite or NaN relevance as "0.0"
Diffstat (limited to 'container-search/src/main/java')
-rw-r--r--container-search/src/main/java/com/yahoo/search/rendering/JsonRenderer.java3
-rw-r--r--container-search/src/main/java/com/yahoo/search/result/Relevance.java3
2 files changed, 5 insertions, 1 deletions
diff --git a/container-search/src/main/java/com/yahoo/search/rendering/JsonRenderer.java b/container-search/src/main/java/com/yahoo/search/rendering/JsonRenderer.java
index c39f0387d46..dd8e261a6b7 100644
--- a/container-search/src/main/java/com/yahoo/search/rendering/JsonRenderer.java
+++ b/container-search/src/main/java/com/yahoo/search/rendering/JsonRenderer.java
@@ -488,7 +488,8 @@ public class JsonRenderer extends AsynchronousSectionedRenderer<Result> {
if (id != null)
generator.writeStringField(ID, id);
- generator.writeNumberField(RELEVANCE, hit.getRelevance().getScore());
+ generator.writeFieldName(RELEVANCE);
+ generator.writeNumber(hit.getRelevance().toString());
if (hit.types().size() > 0) { // TODO: Remove types rendering on Vespa 7
generator.writeArrayFieldStart(TYPES);
diff --git a/container-search/src/main/java/com/yahoo/search/result/Relevance.java b/container-search/src/main/java/com/yahoo/search/result/Relevance.java
index 7737b01cc14..2f6967ee794 100644
--- a/container-search/src/main/java/com/yahoo/search/result/Relevance.java
+++ b/container-search/src/main/java/com/yahoo/search/result/Relevance.java
@@ -47,6 +47,9 @@ public class Relevance implements Comparable<Relevance> {
*/
@Override
public String toString() {
+ if (Double.isNaN(score) || Double.isInfinite(score)) {
+ return "0.0";
+ }
return DoubleFormatter.stringValue(score);
}