diff options
author | bjormel <bjormel@yahooinc.com> | 2023-10-01 12:23:12 +0000 |
---|---|---|
committer | bjormel <bjormel@yahooinc.com> | 2023-10-01 12:23:12 +0000 |
commit | e9058b555d4dfea2f6c872d9a677e8678b569569 (patch) | |
tree | fa1b67c6e39712c1e0d9f308b0dd55573b43f913 /zkfacade/src/main | |
parent | 0ad931fa86658904fe9212b014d810236b0e00e4 (diff) | |
parent | 16030193ec04ee41e98779a3d7ee6a6c1d0d0d6f (diff) |
Merge branch 'master' into bjormel/aws-main-controller
Diffstat (limited to 'zkfacade/src/main')
3 files changed, 17 insertions, 13 deletions
diff --git a/zkfacade/src/main/java/com/yahoo/vespa/curator/Curator.java b/zkfacade/src/main/java/com/yahoo/vespa/curator/Curator.java index 80646dc5607..1bed85b1c02 100644 --- a/zkfacade/src/main/java/com/yahoo/vespa/curator/Curator.java +++ b/zkfacade/src/main/java/com/yahoo/vespa/curator/Curator.java @@ -166,19 +166,19 @@ public class Curator extends AbstractComponent implements AutoCloseable { private void addLoggingListener() { curatorFramework.getConnectionStateListenable().addListener((curatorFramework, connectionState) -> { switch (connectionState) { - case SUSPENDED: LOG.info("ZK connection state change: SUSPENDED"); break; - case RECONNECTED: LOG.info("ZK connection state change: RECONNECTED"); break; - case LOST: LOG.warning("ZK connection state change: LOST"); break; + case SUSPENDED -> LOG.info("ZK connection state change: SUSPENDED"); + case RECONNECTED -> LOG.info("ZK connection state change: RECONNECTED"); + case LOST -> LOG.warning("ZK connection state change: LOST"); } }); } - public CompletionWaiter getCompletionWaiter(Path waiterPath, String id, Duration waitForAll) { - return CuratorCompletionWaiter.create(this, waiterPath, id, waitForAll); + public CompletionWaiter getCompletionWaiter(Path barrierPath, String id, Duration waitForAll) { + return CuratorCompletionWaiter.create(this, barrierPath, id, waitForAll); } - public CompletionWaiter createCompletionWaiter(Path waiterPath, String id, Duration waitForAll) { - return CuratorCompletionWaiter.createAndInitialize(this, waiterPath, id, waitForAll); + public CompletionWaiter createCompletionWaiter(Path barrierPath, String id, Duration waitForAll) { + return CuratorCompletionWaiter.createAndInitialize(this, barrierPath, id, waitForAll); } /** Creates a listenable cache which keeps in sync with changes to all the immediate children of a path */ diff --git a/zkfacade/src/main/java/com/yahoo/vespa/curator/CuratorCompletionWaiter.java b/zkfacade/src/main/java/com/yahoo/vespa/curator/CuratorCompletionWaiter.java index 7d918baaf54..9a8b9b5bf60 100644 --- a/zkfacade/src/main/java/com/yahoo/vespa/curator/CuratorCompletionWaiter.java +++ b/zkfacade/src/main/java/com/yahoo/vespa/curator/CuratorCompletionWaiter.java @@ -2,6 +2,8 @@ package com.yahoo.vespa.curator; import com.yahoo.path.Path; +import com.yahoo.vespa.curator.transaction.CuratorOperations; +import com.yahoo.vespa.curator.transaction.CuratorTransaction; import java.time.Clock; import java.time.Duration; @@ -120,11 +122,13 @@ class CuratorCompletionWaiter implements CompletionWaiter { return new CuratorCompletionWaiter(curator, barrierPath, id, Clock.systemUTC(), waitForAll); } - public static CompletionWaiter createAndInitialize(Curator curator, Path waiterPath, String id, Duration waitForAll) { - curator.delete(waiterPath); - curator.createAtomically(waiterPath); + public static CompletionWaiter createAndInitialize(Curator curator, Path barrierPath, String id, Duration waitForAll) { + // Note: Should be done atomically, but unable to that when path may not exist before delete + // and create should be able to create any missing parent paths + curator.delete(barrierPath); + curator.create(barrierPath); - return new CuratorCompletionWaiter(curator, waiterPath, id, Clock.systemUTC(), waitForAll); + return new CuratorCompletionWaiter(curator, barrierPath, id, Clock.systemUTC(), waitForAll); } private int barrierMemberCount() { diff --git a/zkfacade/src/main/java/com/yahoo/vespa/curator/mock/MockCurator.java b/zkfacade/src/main/java/com/yahoo/vespa/curator/mock/MockCurator.java index 592b9fc2a05..e1376fb154b 100644 --- a/zkfacade/src/main/java/com/yahoo/vespa/curator/mock/MockCurator.java +++ b/zkfacade/src/main/java/com/yahoo/vespa/curator/mock/MockCurator.java @@ -82,12 +82,12 @@ public class MockCurator extends Curator { } @Override - public CompletionWaiter getCompletionWaiter(Path parentPath, String id, Duration waitForAll) { + public CompletionWaiter getCompletionWaiter(Path barrierPath, String id, Duration waitForAll) { return mockFramework().createCompletionWaiter(); } @Override - public CompletionWaiter createCompletionWaiter(Path waiterPath, String id, Duration waitForAll) { + public CompletionWaiter createCompletionWaiter(Path barrierPath, String id, Duration waitForAll) { return mockFramework().createCompletionWaiter(); } |