This is an automated email from the ASF dual-hosted git repository. nic pushed a commit to branch 3.0.x in repository https://gitbox.apache.org/repos/asf/kylin.git
commit a877fee84a0b4a13afa28a2cb78faeea7e663510 Author: yaqian.zhang <[email protected]> AuthorDate: Mon Dec 23 15:01:39 2019 +0800 KYLIN-4295 Instances displayed on Query Node are inconsistent with Job Node --- .../ServiceDiscoveryStateController.java | 29 ++++++++++++++-------- webapp/app/js/controllers/instances.js | 2 +- 2 files changed, 19 insertions(+), 12 deletions(-) diff --git a/server-base/src/main/java/org/apache/kylin/rest/controller/ServiceDiscoveryStateController.java b/server-base/src/main/java/org/apache/kylin/rest/controller/ServiceDiscoveryStateController.java index a315694..42d6cc7 100644 --- a/server-base/src/main/java/org/apache/kylin/rest/controller/ServiceDiscoveryStateController.java +++ b/server-base/src/main/java/org/apache/kylin/rest/controller/ServiceDiscoveryStateController.java @@ -63,6 +63,8 @@ public class ServiceDiscoveryStateController extends BasicController { checkCuratorSchedulerEnabled(); Set<String> allNodes = new HashSet<>(); Set<String> queryNodes = new HashSet<>(); + Set<String> jobNodes = new HashSet<>(); + Set<String> leaders = new HashSet<>(); // get all nodes and query nodes for (String serverWithMode : KylinConfig.getInstanceFromEnv().getRestServersWithMode()) { @@ -75,19 +77,24 @@ public class ServiceDiscoveryStateController extends BasicController { if (mode.equals("query") || mode.equals("all")) { queryNodes.add(server); } + if (mode.equals("job") || mode.equals("all")) { + jobNodes.add(server); + } } // Get all selection participants(only job nodes will participate in the election) and selected leaders Set<Participant> allParticipants = serviceDiscoveryStateService.getAllParticipants(); - Set<String> jobNodes = allParticipants.stream() // - .map(Participant::getId) // - .collect(Collectors.toSet()); // - - // There should only one leader, if there are more than one leader, means something wrong happened - Set<String> leaders = allParticipants.stream() // - .filter(Participant::isLeader) // - .map(Participant::getId) // - .collect(Collectors.toSet()); // + if (!allParticipants.isEmpty()) { + jobNodes = allParticipants.stream() // + .map(Participant::getId) // + .collect(Collectors.toSet()); // + + // There should only one leader, if there are more than one leader, means something wrong happened + leaders = allParticipants.stream() // + .filter(Participant::isLeader) // + .map(Participant::getId) // + .collect(Collectors.toSet()); // + } // Ask for other nodes for its job server state // current Kylin only has one active job node @@ -103,8 +110,8 @@ public class ServiceDiscoveryStateController extends BasicController { // 100 means CuratorScheduler // This monitor only meaningful to CuratorScheduler if (KylinConfig.getInstanceFromEnv().getSchedulerType() != 100) { - throw new UnsupportedOperationException("Only meaningful when scheduler is CuratorScheduler, " + - "try set kylin.job.scheduler.default to 100 to enable CuratorScheduler."); + throw new UnsupportedOperationException("Only meaningful when scheduler is CuratorScheduler, " + + "try set kylin.job.scheduler.default to 100 to enable CuratorScheduler."); } } diff --git a/webapp/app/js/controllers/instances.js b/webapp/app/js/controllers/instances.js index 77b9245..1ff3e69 100644 --- a/webapp/app/js/controllers/instances.js +++ b/webapp/app/js/controllers/instances.js @@ -54,7 +54,7 @@ KylinApp if ($scope.selectedLeaders.indexOf(node) >= 0) { return "Job Node (Leader)"; } else { - return "Job Node (Follower)"; + return "Job Node"; } }
