diff options
author | Jon Marius Venstad <jonmv@users.noreply.github.com> | 2020-12-07 14:57:25 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-12-07 14:57:25 +0100 |
commit | 5456ae113785aa1607ad837dd0d29a9f7405b353 (patch) | |
tree | 47d27404d051fbdbedbf33b626cdbaa440debb58 /clustercontroller-reindexer | |
parent | 7e8c5010e490417a7d9fb93f524acf75cf7f4c6e (diff) | |
parent | 494894f2c1fddae6582f2f1f2c2645447c0abce6 (diff) |
Merge pull request #15719 from vespa-engine/jonmv/accept-unexpected-reindexing-state-transitions
Avoid transition RUNNING -> RUNNING
Diffstat (limited to 'clustercontroller-reindexer')
-rw-r--r-- | clustercontroller-reindexer/src/main/java/ai/vespa/reindexing/Reindexer.java | 7 |
1 files changed, 4 insertions, 3 deletions
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 4ad34074199..ba0811f78f4 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<Instant> 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. |