diff options
author | Arne H Juul <arnej@yahooinc.com> | 2021-11-17 13:04:57 +0000 |
---|---|---|
committer | Arne H Juul <arnej@yahooinc.com> | 2021-11-22 09:42:26 +0000 |
commit | 97033667d2b7184e8922511c646636669d1148e4 (patch) | |
tree | 8ab33a71cac31b8d97e85c0f86949144f9ceed98 | |
parent | 9800e317b56d8276c3ef6765cfd15525be3183c1 (diff) |
add feature flag
3 files changed, 12 insertions, 0 deletions
diff --git a/config-model-api/src/main/java/com/yahoo/config/model/api/ModelContext.java b/config-model-api/src/main/java/com/yahoo/config/model/api/ModelContext.java index 42041f3a0b0..6ed2f3daa30 100644 --- a/config-model-api/src/main/java/com/yahoo/config/model/api/ModelContext.java +++ b/config-model-api/src/main/java/com/yahoo/config/model/api/ModelContext.java @@ -108,6 +108,7 @@ public interface ModelContext { @ModelFeatureFlag(owners = {"geirst", "vekterli"}) default boolean asyncApplyBucketDiff() { return false; } @ModelFeatureFlag(owners = {"arnej"}) default boolean ignoreThreadStackSizes() { return false; } @ModelFeatureFlag(owners = {"vekterli", "geirst"}) default boolean unorderedMergeChaining() { return false; } + @ModelFeatureFlag(owners = {"arnej"}) default boolean useV8GeoPositions() { return false; } } /** Warning: As elsewhere in this package, do not make backwards incompatible changes that will break old config models! */ diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/deploy/ModelContextImpl.java b/configserver/src/main/java/com/yahoo/vespa/config/server/deploy/ModelContextImpl.java index ea823e5befb..a7deac443a5 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/deploy/ModelContextImpl.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/deploy/ModelContextImpl.java @@ -200,6 +200,7 @@ public class ModelContextImpl implements ModelContext { private final boolean asyncApplyBucketDiff; private final boolean ignoreThreadStackSizes; private final boolean unorderedMergeChaining; + private final boolean useV8GeoPositions; public FeatureFlags(FlagSource source, ApplicationId appId) { this.defaultTermwiseLimit = flagValue(source, appId, Flags.DEFAULT_TERM_WISE_LIMIT); @@ -238,6 +239,8 @@ public class ModelContextImpl implements ModelContext { this.asyncApplyBucketDiff = flagValue(source, appId, Flags.ASYNC_APPLY_BUCKET_DIFF); this.ignoreThreadStackSizes = flagValue(source, appId, Flags.IGNORE_THREAD_STACK_SIZES); this.unorderedMergeChaining = flagValue(source, appId, Flags.UNORDERED_MERGE_CHAINING); + this.useV8GeoPositions = flagValue(source, appId, Flags.USE_V8_GEO_POSITIONS); + } @Override public double defaultTermwiseLimit() { return defaultTermwiseLimit; } @@ -278,6 +281,7 @@ public class ModelContextImpl implements ModelContext { @Override public boolean asyncApplyBucketDiff() { return asyncApplyBucketDiff; } @Override public boolean ignoreThreadStackSizes() { return ignoreThreadStackSizes; } @Override public boolean unorderedMergeChaining() { return unorderedMergeChaining; } + @Override public boolean useV8GeoPositions() { return useV8GeoPositions; } private static <V> V flagValue(FlagSource source, ApplicationId appId, UnboundFlag<? extends V, ?, ?> flag) { return flag.bindTo(source) 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 6260ce07c3f..d4fbefeab4c 100644 --- a/flags/src/main/java/com/yahoo/vespa/flags/Flags.java +++ b/flags/src/main/java/com/yahoo/vespa/flags/Flags.java @@ -384,6 +384,13 @@ public class Flags { "Takes effect on config server restart", ZONE_ID); + public static final UnboundBooleanFlag USE_V8_GEO_POSITIONS = defineFeatureFlag( + "use-v8-geo-positions", false, + List.of("arnej"), "2021-11-15", "2022-12-31", + "Use Vespa 8 types and formats for geographical positions", + "Takes effect at redeployment", + ZONE_ID, APPLICATION_ID); + /** WARNING: public for testing: All flags should be defined in {@link Flags}. */ public static UnboundBooleanFlag defineFeatureFlag(String flagId, boolean defaultValue, List<String> owners, String createdAt, String expiresAt, String description, |