diff options
Diffstat (limited to 'configserver')
-rw-r--r-- | configserver/src/main/java/com/yahoo/vespa/config/server/maintenance/Maintainer.java | 7 | ||||
-rw-r--r-- | configserver/src/main/java/com/yahoo/vespa/config/server/maintenance/SessionsMaintainer.java | 4 |
2 files changed, 9 insertions, 2 deletions
diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/maintenance/Maintainer.java b/configserver/src/main/java/com/yahoo/vespa/config/server/maintenance/Maintainer.java index 513f70e4187..d2fd4efa7dc 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/maintenance/Maintainer.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/maintenance/Maintainer.java @@ -33,13 +33,18 @@ public abstract class Maintainer extends AbstractComponent implements Runnable { protected final Curator curator; Maintainer(ApplicationRepository applicationRepository, Curator curator, Duration interval) { + this(applicationRepository, curator, interval, interval); + } + + Maintainer(ApplicationRepository applicationRepository, Curator curator, Duration initialDelay, Duration interval) { this.applicationRepository = applicationRepository; this.curator = curator; this.maintenanceInterval = interval; service = new ScheduledThreadPoolExecutor(1, new DaemonThreadFactory(name())); - service.scheduleAtFixedRate(this, interval.toMillis(), interval.toMillis(), TimeUnit.MILLISECONDS); + service.scheduleAtFixedRate(this, initialDelay.toMillis(), interval.toMillis(), TimeUnit.MILLISECONDS); } + @Override @SuppressWarnings({"try", "unused"}) public void run() { diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/maintenance/SessionsMaintainer.java b/configserver/src/main/java/com/yahoo/vespa/config/server/maintenance/SessionsMaintainer.java index bf9b438f9c6..7da868303e2 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/maintenance/SessionsMaintainer.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/maintenance/SessionsMaintainer.java @@ -17,7 +17,9 @@ public class SessionsMaintainer extends Maintainer { private final boolean hostedVespa; SessionsMaintainer(ApplicationRepository applicationRepository, Curator curator, Duration interval) { - super(applicationRepository, curator, interval); + // Start this maintainer immediately. It frees disk space, so if disk goes full and config server + // restarts this makes sure that cleanup will happen as early as possible + super(applicationRepository, curator, Duration.ZERO, interval); this.hostedVespa = applicationRepository.configserverConfig().hostedVespa(); } |