summaryrefslogtreecommitdiffstats
path: root/container-disc
diff options
context:
space:
mode:
Diffstat (limited to 'container-disc')
-rw-r--r--container-disc/src/main/java/com/yahoo/container/jdisc/ConfiguredApplication.java6
1 files changed, 5 insertions, 1 deletions
diff --git a/container-disc/src/main/java/com/yahoo/container/jdisc/ConfiguredApplication.java b/container-disc/src/main/java/com/yahoo/container/jdisc/ConfiguredApplication.java
index f32d7dfbb02..3158c06b0b1 100644
--- a/container-disc/src/main/java/com/yahoo/container/jdisc/ConfiguredApplication.java
+++ b/container-disc/src/main/java/com/yahoo/container/jdisc/ConfiguredApplication.java
@@ -261,12 +261,16 @@ public final class ConfiguredApplication implements Application {
private void startReconfigurerThread() {
reconfigurerThread = new Thread(() -> {
+ boolean restartOnDeploy = false;
while ( ! Thread.interrupted()) {
try {
ContainerBuilder builder = createBuilderWithGuiceBindings();
+ // Restart on deploy is sticky: Once it is set no future generation should be applied until restart
+ restartOnDeploy = restartOnDeploy || qrConfig.restartOnDeploy();
+
// Block until new config arrives, and it should be applied
- configurer.getNewComponentGraph(builder.guiceModules().activate());
+ configurer.getNewComponentGraph(builder.guiceModules().activate(), restartOnDeploy);
initializeAndActivateContainer(builder);
} catch (ConfigInterruptedException e) {
break;