Michael Blow has uploaded a new change for review.
https://asterix-gerrit.ics.uci.edu/2020
Change subject: [NO ISSUE][CLUS] Don't refresh state from SHUTDOWN
......................................................................
[NO ISSUE][CLUS] Don't refresh state from SHUTDOWN
- ZK initial state is UNUSABLE
Change-Id: I396374545582dc6a382881dbd5a44d0dabb00224
---
M
asterixdb/asterix-common/src/main/java/org/apache/asterix/common/api/IClusterManagementWork.java
M
asterixdb/asterix-events/src/main/java/org/apache/asterix/event/service/ClusterStateWatcher.java
M
asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/utils/ClusterStateManager.java
3 files changed, 5 insertions(+), 2 deletions(-)
git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb
refs/changes/20/2020/1
diff --git
a/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/api/IClusterManagementWork.java
b/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/api/IClusterManagementWork.java
index e3424ec..8bc6eb0 100644
---
a/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/api/IClusterManagementWork.java
+++
b/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/api/IClusterManagementWork.java
@@ -26,7 +26,6 @@
}
enum ClusterState {
- STARTING, // the initial state
UNUSABLE, // one or more cluster partitions are inactive or max
id resources have not been reported
PENDING, // the metadata node has not yet joined & initialized
RECOVERING, // global recovery has not yet completed
diff --git
a/asterixdb/asterix-events/src/main/java/org/apache/asterix/event/service/ClusterStateWatcher.java
b/asterixdb/asterix-events/src/main/java/org/apache/asterix/event/service/ClusterStateWatcher.java
index f823404..c51e2cf 100644
---
a/asterixdb/asterix-events/src/main/java/org/apache/asterix/event/service/ClusterStateWatcher.java
+++
b/asterixdb/asterix-events/src/main/java/org/apache/asterix/event/service/ClusterStateWatcher.java
@@ -29,7 +29,7 @@
private final ZooKeeper zk;
private String clusterStatePath;
private boolean done = false;
- private ClusterState clusterState = ClusterState.STARTING;
+ private ClusterState clusterState = ClusterState.UNUSABLE;
private boolean failed = false;
private Exception failureCause = null;
private static Logger LOGGER =
Logger.getLogger(ClusterStateWatcher.class.getName());
diff --git
a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/utils/ClusterStateManager.java
b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/utils/ClusterStateManager.java
index 334b683..51c87b4 100644
---
a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/utils/ClusterStateManager.java
+++
b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/utils/ClusterStateManager.java
@@ -165,6 +165,10 @@
@Override
public synchronized void refreshState() throws HyracksDataException {
+ if (state == ClusterState.SHUTTING_DOWN) {
+ LOGGER.log(Level.INFO, "Not refreshing final state %s", state);
+ return;
+ }
resetClusterPartitionConstraint();
if (clusterPartitions.isEmpty()) {
LOGGER.info("Cluster does not have any registered partitions");
--
To view, visit https://asterix-gerrit.ics.uci.edu/2020
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I396374545582dc6a382881dbd5a44d0dabb00224
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Michael Blow <[email protected]>