diff options
-rw-r--r-- | configdefinitions/src/vespa/configserver.def | 3 | ||||
-rw-r--r-- | configserver/src/main/java/com/yahoo/vespa/config/server/ApplicationRepository.java | 8 |
2 files changed, 8 insertions, 3 deletions
diff --git a/configdefinitions/src/vespa/configserver.def b/configdefinitions/src/vespa/configserver.def index 228a5c6fb4f..b92a865783a 100644 --- a/configdefinitions/src/vespa/configserver.def +++ b/configdefinitions/src/vespa/configserver.def @@ -61,3 +61,6 @@ tenantsMaintainerIntervalMinutes int default=525600 # How long bootstrapping can take before giving up (in seconds) maxDurationOfBootstrap long default=7200 + +# Feature Flags (poor man's feature flags, to be overridden in configserver-config.xml if needed) +deleteApplicationLegacy bool default=false diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/ApplicationRepository.java b/configserver/src/main/java/com/yahoo/vespa/config/server/ApplicationRepository.java index 1bfe14566f7..552a67c902e 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/ApplicationRepository.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/ApplicationRepository.java @@ -270,10 +270,12 @@ public class ApplicationRepository implements com.yahoo.config.provision.Deploye */ public boolean delete(ApplicationId applicationId) { // TODO: Use deleteApplication() in all zones - if ( ! configserverConfig.hostedVespa() || SystemName.from(configserverConfig.system()) == SystemName.cd) { - return deleteApplication(applicationId); - } else { + if (configserverConfig.deleteApplicationLegacy() || + (configserverConfig.hostedVespa() && SystemName.from(configserverConfig.system()) == SystemName.main + && !Arrays.asList("corp-us-east-1", "aws-us-east-1a").contains(configserverConfig.region()))) { return deleteApplicationLegacy(applicationId); + } else { + return deleteApplication(applicationId); } } |