From 6f9ba7730d719e019bb10524b73f43507892efd3 Mon Sep 17 00:00:00 2001 From: Henning Baldersheim Date: Wed, 31 Aug 2022 11:28:00 +0200 Subject: Make splitting of phrases default --- flags/src/main/java/com/yahoo/vespa/flags/Flags.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flags/src/main/java/com/yahoo/vespa/flags/Flags.java b/flags/src/main/java/com/yahoo/vespa/flags/Flags.java index d5083353483..9bafcc699bb 100644 --- a/flags/src/main/java/com/yahoo/vespa/flags/Flags.java +++ b/flags/src/main/java/com/yahoo/vespa/flags/Flags.java @@ -71,7 +71,7 @@ public class Flags { ZONE_ID, APPLICATION_ID); public static final UnboundStringFlag PHRASE_OPTIMIZATION = defineStringFlag( - "phrase-optimization", "", + "phrase-optimization", "split", List.of("baldersheim"), "2022-08-28", "2023-01-01", "Select phase optimization, valid values are 'delay', 'spilt' or both", "Takes effect at redeployment", -- cgit v1.2.3 From aaea16ab173adbab176cf969fcb7c7e534af3c73 Mon Sep 17 00:00:00 2001 From: Henning Baldersheim Date: Wed, 31 Aug 2022 11:41:41 +0200 Subject: Remove option to specify delay with feature flag. --- config-model/src/main/java/com/yahoo/schema/RankProfile.java | 3 --- .../src/test/java/com/yahoo/schema/RankPropertiesTestCase.java | 9 +++------ flags/src/main/java/com/yahoo/vespa/flags/Flags.java | 2 +- 3 files changed, 4 insertions(+), 10 deletions(-) diff --git a/config-model/src/main/java/com/yahoo/schema/RankProfile.java b/config-model/src/main/java/com/yahoo/schema/RankProfile.java index acbfed30c4c..da7d75ac856 100644 --- a/config-model/src/main/java/com/yahoo/schema/RankProfile.java +++ b/config-model/src/main/java/com/yahoo/schema/RankProfile.java @@ -162,9 +162,6 @@ public class RankProfile implements Cloneable { if (deployProperties.featureFlags().phraseOptimization().contains("split")) { addRankProperty(new RankProperty("vespa.matching.split_unpacking_iterators", "true")); } - if (deployProperties.featureFlags().phraseOptimization().contains("delay")) { - addRankProperty(new RankProperty("vespa.matching.delay_unpacking_iterators", "true")); - } } public String name() { return name; } diff --git a/config-model/src/test/java/com/yahoo/schema/RankPropertiesTestCase.java b/config-model/src/test/java/com/yahoo/schema/RankPropertiesTestCase.java index b51d62defaf..1c52ceadecd 100644 --- a/config-model/src/test/java/com/yahoo/schema/RankPropertiesTestCase.java +++ b/config-model/src/test/java/com/yahoo/schema/RankPropertiesTestCase.java @@ -8,7 +8,6 @@ import com.yahoo.schema.derived.AttributeFields; import com.yahoo.schema.derived.RawRankProfile; import com.yahoo.schema.parser.ParseException; import ai.vespa.rankingexpression.importer.configmodelview.ImportedMlModels; -import com.yahoo.search.query.ranking.RankProperties; import org.junit.jupiter.api.Test; import java.util.List; @@ -107,15 +106,13 @@ public class RankPropertiesTestCase extends AbstractSchemaTestCase { builder.build(true); Schema schema = builder.getSchema(); List props = rankProfileRegistry.get(schema, "a").getRankProperties(); - assertEquals(2, props.size()); + assertEquals(1, props.size()); assertEquals(new RankProfile.RankProperty("vespa.matching.split_unpacking_iterators","true"), props.get(0)); - assertEquals(new RankProfile.RankProperty("vespa.matching.delay_unpacking_iterators","true"), props.get(1)); props = rankProfileRegistry.get(schema, "b").getRankProperties(); - assertEquals(3, props.size()); + assertEquals(2, props.size()); assertEquals(new RankProfile.RankProperty("vespa.matching.split_unpacking_iterators","true"), props.get(0)); - assertEquals(new RankProfile.RankProperty("vespa.matching.delay_unpacking_iterators","true"), props.get(1)); - assertEquals(new RankProfile.RankProperty("query(a)","2000"), props.get(2)); + assertEquals(new RankProfile.RankProperty("query(a)","2000"), props.get(1)); } @Test diff --git a/flags/src/main/java/com/yahoo/vespa/flags/Flags.java b/flags/src/main/java/com/yahoo/vespa/flags/Flags.java index 9bafcc699bb..f4d6d2c3e86 100644 --- a/flags/src/main/java/com/yahoo/vespa/flags/Flags.java +++ b/flags/src/main/java/com/yahoo/vespa/flags/Flags.java @@ -73,7 +73,7 @@ public class Flags { public static final UnboundStringFlag PHRASE_OPTIMIZATION = defineStringFlag( "phrase-optimization", "split", List.of("baldersheim"), "2022-08-28", "2023-01-01", - "Select phase optimization, valid values are 'delay', 'spilt' or both", + "Select phase optimization, valid values are 'spilt'.", "Takes effect at redeployment", ZONE_ID, APPLICATION_ID); -- cgit v1.2.3 From 6045bfe039fc3f79119d921ad3945de8dcbffedc Mon Sep 17 00:00:00 2001 From: Henning Baldersheim Date: Wed, 31 Aug 2022 11:43:56 +0200 Subject: Also add option to turn split optimisation off. --- config-model/src/main/java/com/yahoo/schema/RankProfile.java | 2 ++ config-model/src/test/java/com/yahoo/schema/RankPropertiesTestCase.java | 2 +- flags/src/main/java/com/yahoo/vespa/flags/Flags.java | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/config-model/src/main/java/com/yahoo/schema/RankProfile.java b/config-model/src/main/java/com/yahoo/schema/RankProfile.java index da7d75ac856..dc7605c4897 100644 --- a/config-model/src/main/java/com/yahoo/schema/RankProfile.java +++ b/config-model/src/main/java/com/yahoo/schema/RankProfile.java @@ -161,6 +161,8 @@ public class RankProfile implements Cloneable { this.deployLogger = deployLogger; if (deployProperties.featureFlags().phraseOptimization().contains("split")) { addRankProperty(new RankProperty("vespa.matching.split_unpacking_iterators", "true")); + } else if (deployProperties.featureFlags().phraseOptimization().contains("off")) { + addRankProperty(new RankProperty("vespa.matching.split_unpacking_iterators", "false")); } } diff --git a/config-model/src/test/java/com/yahoo/schema/RankPropertiesTestCase.java b/config-model/src/test/java/com/yahoo/schema/RankPropertiesTestCase.java index 1c52ceadecd..b538d834df9 100644 --- a/config-model/src/test/java/com/yahoo/schema/RankPropertiesTestCase.java +++ b/config-model/src/test/java/com/yahoo/schema/RankPropertiesTestCase.java @@ -81,7 +81,7 @@ public class RankPropertiesTestCase extends AbstractSchemaTestCase { @Test public void testDefaultRankProperties() throws ParseException { RankProfileRegistry rankProfileRegistry = new RankProfileRegistry(); - ApplicationBuilder builder = new ApplicationBuilder(rankProfileRegistry, new QueryProfileRegistry(), new TestProperties().setPhraseOptimization("split delay")); + ApplicationBuilder builder = new ApplicationBuilder(rankProfileRegistry, new QueryProfileRegistry(), new TestProperties().setPhraseOptimization("split")); builder.addSchema(joinLines( "search test {", " document test {", diff --git a/flags/src/main/java/com/yahoo/vespa/flags/Flags.java b/flags/src/main/java/com/yahoo/vespa/flags/Flags.java index f4d6d2c3e86..d4d3c02cce3 100644 --- a/flags/src/main/java/com/yahoo/vespa/flags/Flags.java +++ b/flags/src/main/java/com/yahoo/vespa/flags/Flags.java @@ -73,7 +73,7 @@ public class Flags { public static final UnboundStringFlag PHRASE_OPTIMIZATION = defineStringFlag( "phrase-optimization", "split", List.of("baldersheim"), "2022-08-28", "2023-01-01", - "Select phase optimization, valid values are 'spilt'.", + "Select phase optimization, valid values are 'spilt', 'off'.", "Takes effect at redeployment", ZONE_ID, APPLICATION_ID); -- cgit v1.2.3 From c87a412d6cb56f9bea6f7236c1627f39bba1789b Mon Sep 17 00:00:00 2001 From: Henning Baldersheim Date: Wed, 31 Aug 2022 12:11:01 +0200 Subject: Update flags/src/main/java/com/yahoo/vespa/flags/Flags.java Co-authored-by: Harald Musum --- flags/src/main/java/com/yahoo/vespa/flags/Flags.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flags/src/main/java/com/yahoo/vespa/flags/Flags.java b/flags/src/main/java/com/yahoo/vespa/flags/Flags.java index d4d3c02cce3..273ffb1acc1 100644 --- a/flags/src/main/java/com/yahoo/vespa/flags/Flags.java +++ b/flags/src/main/java/com/yahoo/vespa/flags/Flags.java @@ -73,7 +73,7 @@ public class Flags { public static final UnboundStringFlag PHRASE_OPTIMIZATION = defineStringFlag( "phrase-optimization", "split", List.of("baldersheim"), "2022-08-28", "2023-01-01", - "Select phase optimization, valid values are 'spilt', 'off'.", + "Select phase optimization, valid values are 'split', 'off'.", "Takes effect at redeployment", ZONE_ID, APPLICATION_ID); -- cgit v1.2.3