You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@helix.apache.org by jx...@apache.org on 2018/01/25 21:49:19 UTC

[28/50] [abbrv] helix git commit: Fix NPE if rebalance strategy is not specified in IS.

Fix NPE if rebalance strategy is not specified in IS.


Project: http://git-wip-us.apache.org/repos/asf/helix/repo
Commit: http://git-wip-us.apache.org/repos/asf/helix/commit/019d6f4d
Tree: http://git-wip-us.apache.org/repos/asf/helix/tree/019d6f4d
Diff: http://git-wip-us.apache.org/repos/asf/helix/diff/019d6f4d

Branch: refs/heads/master
Commit: 019d6f4ddb21f0c9371fcf6f4e99504fa961c551
Parents: d9696cc
Author: Lei Xia <lx...@linkedin.com>
Authored: Mon Dec 11 11:41:18 2017 -0800
Committer: Junkai Xue <jx...@linkedin.com>
Committed: Wed Jan 24 18:32:16 2018 -0800

----------------------------------------------------------------------
 .../helix/controller/rebalancer/DelayedAutoRebalancer.java  | 2 +-
 .../java/org/apache/helix/messaging/handling/HelixTask.java | 9 ++++++++-
 2 files changed, 9 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/helix/blob/019d6f4d/helix-core/src/main/java/org/apache/helix/controller/rebalancer/DelayedAutoRebalancer.java
----------------------------------------------------------------------
diff --git a/helix-core/src/main/java/org/apache/helix/controller/rebalancer/DelayedAutoRebalancer.java b/helix-core/src/main/java/org/apache/helix/controller/rebalancer/DelayedAutoRebalancer.java
index 7ad2eb2..f943abf 100644
--- a/helix-core/src/main/java/org/apache/helix/controller/rebalancer/DelayedAutoRebalancer.java
+++ b/helix-core/src/main/java/org/apache/helix/controller/rebalancer/DelayedAutoRebalancer.java
@@ -66,7 +66,7 @@ public class DelayedAutoRebalancer extends AbstractRebalancer {
     ZNRecord znRecord = clusterData.getCachedIdealMapping(resourceName);
     if (znRecord != null) {
       // TODO: only apply to legacy Auto-RebalanceStrategy at this time, need to apply to any strategy in future.
-      if (currentIdealState.getRebalanceStrategy().equals(AutoRebalanceStrategy.class.getName())) {
+      if (AutoRebalanceStrategy.class.getName().equals(currentIdealState.getRebalanceStrategy())) {
         LOG.info("Use cached idealstate for " + resourceName);
         IdealState idealState = new IdealState(znRecord);
         return idealState;

http://git-wip-us.apache.org/repos/asf/helix/blob/019d6f4d/helix-core/src/main/java/org/apache/helix/messaging/handling/HelixTask.java
----------------------------------------------------------------------
diff --git a/helix-core/src/main/java/org/apache/helix/messaging/handling/HelixTask.java b/helix-core/src/main/java/org/apache/helix/messaging/handling/HelixTask.java
index 7b1853f..2543d81 100644
--- a/helix-core/src/main/java/org/apache/helix/messaging/handling/HelixTask.java
+++ b/helix-core/src/main/java/org/apache/helix/messaging/handling/HelixTask.java
@@ -214,6 +214,8 @@ public class HelixTask implements MessageTask {
     boolean success = accessor.removeProperty(msgKey);
     if (!success) {
       logger.warn("Failed to delete message " + message.getId() + " from zk!");
+    } else {
+      logger.info("Delete message " + message.getId() + " from zk!");
     }
   }
 
@@ -225,6 +227,9 @@ public class HelixTask implements MessageTask {
 
       // Ignore all relay messages if participant's session has changed.
       if (!_manager.getSessionId().equals(message.getTgtSessionId())) {
+        logger.info(
+            "Session id has been changed, ignore all relay messages attached with " + message
+                .getId());
         return;
       }
 
@@ -234,7 +239,7 @@ public class HelixTask implements MessageTask {
           msg.setRelayTime(taskCompletionTime);
           if (msg.isExpired()) {
             logger.info(
-                "Relay message expired, ignore it! " + msg.getId() + " to instance " + instance);
+                "Relay message expired, ignore " + msg.getId() + " to instance " + instance);
             continue;
           }
           PropertyKey msgKey = keyBuilder.message(instance, msg.getId());
@@ -242,6 +247,8 @@ public class HelixTask implements MessageTask {
               .create(msgKey.getPath(), msg.getRecord(), AccessOption.PERSISTENT);
           if (!success) {
             logger.warn("Failed to send relay message " + msg.getId() + " to " + instance);
+          } else {
+            logger.info("Send relay message " + message.getId() + " to " + instance);
           }
         }
       }