diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2019-03-21 08:45:23 +0100 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2019-03-21 08:45:23 +0100 |
commit | 47e12867aee53070b589b8000941f30d429c3998 (patch) | |
tree | 66501678e61aa000dd7bb0a0a0ff3b029d5e00a4 /container-search | |
parent | f60935d45bd01a0e0edfa5dc605936ad96f88aaa (diff) |
Enusure that explicit overrides go through
Diffstat (limited to 'container-search')
3 files changed, 15 insertions, 7 deletions
diff --git a/container-search/src/main/java/com/yahoo/search/query/ranking/SoftTimeout.java b/container-search/src/main/java/com/yahoo/search/query/ranking/SoftTimeout.java index 05cbed6b6d9..1bca3df4d77 100644 --- a/container-search/src/main/java/com/yahoo/search/query/ranking/SoftTimeout.java +++ b/container-search/src/main/java/com/yahoo/search/query/ranking/SoftTimeout.java @@ -37,7 +37,7 @@ public class SoftTimeout implements Cloneable { } public static QueryProfileType getArgumentType() { return argumentType; } - private boolean enabled = true; + private Boolean enabled = null; private Double factor = null; private Double tailcost = null; @@ -69,8 +69,8 @@ public class SoftTimeout implements Cloneable { /** Internal operation - DO NOT USE */ public void prepare(RankProperties rankProperties) { - if ( !enabled) - rankProperties.put("vespa.softtimeout.enable", "false"); + if (enabled != null) + rankProperties.put("vespa.softtimeout.enable", String.valueOf(enabled)); if (factor != null) rankProperties.put("vespa.softtimeout.factor", String.valueOf(factor)); if (tailcost != null) @@ -90,7 +90,7 @@ public class SoftTimeout implements Cloneable { @Override public int hashCode() { int hash = 0; - if (enabled) hash += 11; + if (enabled != null) hash += 11; if (factor != null) hash += 13 * factor.hashCode(); if (tailcost != null) hash += 17 * tailcost.hashCode(); return hash; diff --git a/container-search/src/test/java/com/yahoo/fs4/test/QueryTestCase.java b/container-search/src/test/java/com/yahoo/fs4/test/QueryTestCase.java index e998dd4c966..fc39c1d8fe0 100644 --- a/container-search/src/test/java/com/yahoo/fs4/test/QueryTestCase.java +++ b/container-search/src/test/java/com/yahoo/fs4/test/QueryTestCase.java @@ -82,7 +82,7 @@ public class QueryTestCase { "&ranking.features.query(foo)=30.3&ranking.features.query(bar)=0" + "&ranking.properties.property.p1=v1&ranking.properties.property.p2=v2" + "&pos.ll=S22.4532;W123.9887&pos.radius=3&pos.attribute=place&ranking.freshness=37" + - "&model.searchPath=7/3&ranking.softtimeout.enable=true"); + "&model.searchPath=7/3"); query.getRanking().setFreshness(new Freshness("123456")); query.getRanking().setSorting("+field1 -field2"); query.getRanking().setProfile("two"); diff --git a/container-search/src/test/java/com/yahoo/search/query/SoftTimeoutTestCase.java b/container-search/src/test/java/com/yahoo/search/query/SoftTimeoutTestCase.java index 0881a141abd..6754494ba4e 100644 --- a/container-search/src/test/java/com/yahoo/search/query/SoftTimeoutTestCase.java +++ b/container-search/src/test/java/com/yahoo/search/query/SoftTimeoutTestCase.java @@ -13,7 +13,7 @@ public class SoftTimeoutTestCase { @Test public void testDefaultsInQuery() { Query query=new Query("?query=test"); - assertTrue(query.getRanking().getSoftTimeout().getEnable()); + assertNull(query.getRanking().getSoftTimeout().getEnable()); assertNull(query.getRanking().getSoftTimeout().getFactor()); assertNull(query.getRanking().getSoftTimeout().getTailcost()); } @@ -21,7 +21,7 @@ public class SoftTimeoutTestCase { @Test public void testQueryOverride() { Query query=new Query("?query=test&ranking.softtimeout.factor=0.7&ranking.softtimeout.tailcost=0.3"); - assertTrue(query.getRanking().getSoftTimeout().getEnable()); + assertNull(query.getRanking().getSoftTimeout().getEnable()); assertEquals(Double.valueOf(0.7), query.getRanking().getSoftTimeout().getFactor()); assertEquals(Double.valueOf(0.3), query.getRanking().getSoftTimeout().getTailcost()); query.prepare(); @@ -38,6 +38,14 @@ public class SoftTimeoutTestCase { assertEquals("false", query.getRanking().getProperties().get("vespa.softtimeout.enable").get(0)); } + @Test + public void testEnable() { + Query query=new Query("?query=test&ranking.softtimeout.enable=true"); + assertTrue(query.getRanking().getSoftTimeout().getEnable()); + query.prepare(); + assertEquals("true", query.getRanking().getProperties().get("vespa.softtimeout.enable").get(0)); + } + private void verifyException(String key, String value) { try { new Query("?query=test&ranking.softtimeout."+key+"="+value); |