From 494894f2c1fddae6582f2f1f2c2645447c0abce6 Mon Sep 17 00:00:00 2001 From: Jon Marius Venstad Date: Mon, 7 Dec 2020 14:14:33 +0100 Subject: Avoid transition RUNNING -> RUNNING --- .../src/main/java/ai/vespa/reindexing/Reindexer.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'clustercontroller-reindexer') diff --git a/clustercontroller-reindexer/src/main/java/ai/vespa/reindexing/Reindexer.java b/clustercontroller-reindexer/src/main/java/ai/vespa/reindexing/Reindexer.java index ef5e676e36b..e97425381b9 100644 --- a/clustercontroller-reindexer/src/main/java/ai/vespa/reindexing/Reindexer.java +++ b/clustercontroller-reindexer/src/main/java/ai/vespa/reindexing/Reindexer.java @@ -136,12 +136,12 @@ public class Reindexer { return; case RUNNING: log.log(WARNING, "Unexpected state 'RUNNING' of reindexing of " + type); - case READY: // Intentional fallthrough — must just assume we failed updating state when exiting previously. - log.log(FINE, () -> "Running reindexing of " + type); + break; + case READY: + status.updateAndGet(Status::running); } // Visit buckets until they're all done, or until we are shut down. - status.updateAndGet(Status::running); AtomicReference progressLastStored = new AtomicReference<>(clock.instant()); VisitorControlHandler control = new VisitorControlHandler() { @Override @@ -164,6 +164,7 @@ public class Reindexer { VisitorParameters parameters = createParameters(type, status.get().progress().orElse(null)); parameters.setControlHandler(control); Runnable sessionShutdown = visitorSessions.apply(parameters); // Also starts the visitor session. + log.log(FINE, () -> "Running reindexing of " + type); // Wait until done; or until termination is forced, in which we shut down the visitor session immediately. phaser.arriveAndAwaitAdvance(); // Synchronize with visitor completion. -- cgit v1.2.3