You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@asterixdb.apache.org by dl...@apache.org on 2019/04/13 00:18:15 UTC
[asterixdb] 02/06: [NO ISSUE][*DB][CLUS] Add failed nodes API to
ClusterStateManager
This is an automated email from the ASF dual-hosted git repository.
dlych pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/asterixdb.git
commit f5ccf50f4695a8557983abcfa8b1ad989ed8822a
Author: Michael Blow <mi...@couchbase.com>
AuthorDate: Thu Apr 11 10:53:13 2019 -0400
[NO ISSUE][*DB][CLUS] Add failed nodes API to ClusterStateManager
Change-Id: I1b56b29c38f0bbfe54b30ee5781770e90404c528
Reviewed-on: https://asterix-gerrit.ics.uci.edu/3335
Tested-by: Jenkins <je...@fulliautomatix.ics.uci.edu>
Integration-Tests: Jenkins <je...@fulliautomatix.ics.uci.edu>
Reviewed-by: Till Westmann <ti...@apache.org>
---
.../java/org/apache/asterix/common/cluster/IClusterStateManager.java | 5 +++++
.../java/org/apache/asterix/runtime/utils/ClusterStateManager.java | 5 +++++
2 files changed, 10 insertions(+)
diff --git a/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/cluster/IClusterStateManager.java b/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/cluster/IClusterStateManager.java
index 5e99eec..d0d039d 100644
--- a/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/cluster/IClusterStateManager.java
+++ b/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/cluster/IClusterStateManager.java
@@ -139,6 +139,11 @@ public interface IClusterStateManager {
Set<String> getParticipantNodes();
/**
+ * @return the set of currently failed nodes
+ */
+ Set<String> getFailedNodes();
+
+ /**
* Returns the IO devices configured for a Node Controller
*
* @param nodeId
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 8d3187b..720b089 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
@@ -251,6 +251,11 @@ public class ClusterStateManager implements IClusterStateManager {
}
@Override
+ public synchronized Set<String> getFailedNodes() {
+ return new HashSet<>(failedNodes);
+ }
+
+ @Override
public synchronized Set<String> getParticipantNodes(boolean excludePendingRemoval) {
final Set<String> participantNodesCopy = getParticipantNodes();
if (excludePendingRemoval) {