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) {