Skip to content

Commit e4bee52

Browse files
authored
Merge pull request #37231 from vespa-engine/boeker/enable-ann-timeout-by-default
Enable ANN timeout by default
2 parents 4f98837 + dedabeb commit e4bee52

4 files changed

Lines changed: 6 additions & 7 deletions

File tree

container-search/src/main/java/com/yahoo/search/query/properties/QueryProperties.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ private static Map<CompoundName, GetterSetter> createPropertySetterMap() {
113113
addDualCasedRM(map, Matching.LAZY_FILTER, GetterSetter.of(query -> query.getRanking().getMatching().getLazyFilter(), (query, value) -> query.getRanking().getMatching().setLazyFilter(asBoolean(value, false))));
114114
addDualCasedRM(map, Matching.FILTER_THRESHOLD, GetterSetter.of(query -> query.getRanking().getMatching().getFilterThreshold(), (query, value) -> query.getRanking().getMatching().setFilterThreshold(asDouble(value, 1.0))));
115115
addDualCasedRM(map, Matching.ANNTIMEBUDGET, GetterSetter.of(query -> query.getRanking().getMatching().getAnnTimeBudget(), (query, value) -> query.getRanking().getMatching().setAnnTimeBudget(ParameterParser.asMilliSeconds(value, Long.MAX_VALUE))));
116-
map.put(CompoundName.fromComponents(Ranking.RANKING, Matching.MATCHING, Matching.ANNTIMEOUT, AnnTimeout.ENABLE), GetterSetter.of(query -> query.getRanking().getMatching().getAnnTimeout().getEnable(), (query, value) -> query.getRanking().getMatching().getAnnTimeout().setEnable(asBoolean(value, false))));
116+
map.put(CompoundName.fromComponents(Ranking.RANKING, Matching.MATCHING, Matching.ANNTIMEOUT, AnnTimeout.ENABLE), GetterSetter.of(query -> query.getRanking().getMatching().getAnnTimeout().getEnable(), (query, value) -> query.getRanking().getMatching().getAnnTimeout().setEnable(asBoolean(value, true))));
117117
map.put(CompoundName.fromComponents(Ranking.RANKING, Matching.MATCHING, Matching.ANNTIMEOUT, AnnTimeout.FACTOR), GetterSetter.of(query -> query.getRanking().getMatching().getAnnTimeout().getFactor(), (query, value) -> query.getRanking().getMatching().getAnnTimeout().setFactor(asDouble(value, 0.9))));
118118
map.put(CompoundName.fromComponents(Ranking.RANKING, Matching.MATCHING, Matching.WEAKAND, WeakAnd.STOPWORD_LIMIT), GetterSetter.of(query -> query.getRanking().getMatching().getWeakAnd().getStopwordLimit(), (query, value) -> query.getRanking().getMatching().getWeakAnd().setStopwordLimit(asDouble(value, 1.0))));
119119
map.put(CompoundName.fromComponents(Ranking.RANKING, Matching.MATCHING, Matching.WEAKAND, WeakAnd.ADJUST_TARGET), GetterSetter.of(query -> query.getRanking().getMatching().getWeakAnd().getAdjustTarget(), (query, value) -> query.getRanking().getMatching().getWeakAnd().setAdjustTarget(asDouble(value, 1.0))));

container-search/src/main/java/com/yahoo/search/query/ranking/AnnTimeout.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -38,11 +38,10 @@ public void setEnable(boolean enable) {
3838
this.enabled = enable;
3939
}
4040

41-
/** Returns whether anntimeout is enabled. Default is false.
42-
* TODO: Make true the default once everything is in place.
41+
/** Returns whether anntimeout is enabled. Default is true.
4342
* */
4443
public Boolean getEnable() {
45-
if (enabled == null) return Boolean.FALSE;
44+
if (enabled == null) return Boolean.TRUE;
4645
return enabled;
4746
}
4847

container-search/src/test/java/com/yahoo/search/query/AnnTimeoutTestCase.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,14 +18,14 @@ public class AnnTimeoutTestCase {
1818
@Test
1919
void testDefaultsInQuery() {
2020
Query query = new Query("?query=test");
21-
assertFalse(query.getRanking().getMatching().getAnnTimeout().getEnable());
21+
assertTrue(query.getRanking().getMatching().getAnnTimeout().getEnable());
2222
assertNull(query.getRanking().getMatching().getAnnTimeout().getFactor());
2323
}
2424

2525
@Test
2626
void testQueryOverride() {
2727
Query query = new Query("?query=test&ranking.matching.anntimeout.factor=0.1");
28-
assertFalse(query.getRanking().getMatching().getAnnTimeout().getEnable());
28+
assertTrue(query.getRanking().getMatching().getAnnTimeout().getEnable());
2929
assertEquals(Double.valueOf(0.1), query.getRanking().getMatching().getAnnTimeout().getFactor());
3030
query.prepare();
3131
assertNull(query.getRanking().getProperties().get("vespa.matching.nns.anntimeout.enable"));

searchlib/src/vespa/searchlib/fef/indexproperties.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -544,7 +544,7 @@ bool AnnTimeBudget::is_present(const Properties& props) {
544544
namespace anntimeout {
545545

546546
const std::string Enabled::NAME("vespa.matching.nns.anntimeout.enable");
547-
const bool Enabled::DEFAULT_VALUE(false);
547+
const bool Enabled::DEFAULT_VALUE(true);
548548

549549
bool Enabled::lookup(const Properties& props) {
550550
return lookupBool(props, NAME, DEFAULT_VALUE);

0 commit comments

Comments
 (0)