You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@helix.apache.org by hu...@apache.org on 2019/11/17 01:34:22 UTC
[helix] branch master updated: Fix NullPointerException for
testCustomCodeRunner. (#581)
This is an automated email from the ASF dual-hosted git repository.
hulee pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/helix.git
The following commit(s) were added to refs/heads/master by this push:
new 644a568 Fix NullPointerException for testCustomCodeRunner. (#581)
644a568 is described below
commit 644a5687fb27b879959c6a75cbefbc6395249d08
Author: Huizhi L <ih...@gmail.com>
AuthorDate: Sat Nov 16 17:34:11 2019 -0800
Fix NullPointerException for testCustomCodeRunner. (#581)
The new live instance doesn't have its instance config. This causes NullPointerException when monitor is trying to get the instance config.
Changelist:
Add instance config for the new live instance.
---
.../integration/TestHelixCustomCodeRunner.java | 24 ++++++++--------------
1 file changed, 8 insertions(+), 16 deletions(-)
diff --git a/helix-core/src/test/java/org/apache/helix/integration/TestHelixCustomCodeRunner.java b/helix-core/src/test/java/org/apache/helix/integration/TestHelixCustomCodeRunner.java
index 4d8a3c6..819ee8f 100644
--- a/helix-core/src/test/java/org/apache/helix/integration/TestHelixCustomCodeRunner.java
+++ b/helix-core/src/test/java/org/apache/helix/integration/TestHelixCustomCodeRunner.java
@@ -20,18 +20,14 @@ package org.apache.helix.integration;
*/
import java.util.Date;
+
import org.apache.helix.HelixConstants.ChangeType;
-import org.apache.helix.HelixDataAccessor;
import org.apache.helix.HelixManager;
import org.apache.helix.NotificationContext;
-import org.apache.helix.PropertyKey.Builder;
import org.apache.helix.TestHelper;
import org.apache.helix.common.ZkTestBase;
import org.apache.helix.integration.manager.ClusterControllerManager;
import org.apache.helix.integration.manager.MockParticipantManager;
-import org.apache.helix.manager.zk.ZKHelixDataAccessor;
-import org.apache.helix.manager.zk.ZkBaseDataAccessor;
-import org.apache.helix.model.LiveInstance;
import org.apache.helix.participant.CustomCodeCallbackHandler;
import org.apache.helix.participant.HelixCustomCodeRunner;
import org.apache.helix.tools.ClusterStateVerifier;
@@ -109,15 +105,11 @@ public class TestHelixCustomCodeRunner extends ZkTestBase {
Assert.assertTrue(_callback._isCallbackInvoked);
_callback._isCallbackInvoked = false;
- // add a new live instance
- HelixDataAccessor accessor =
- new ZKHelixDataAccessor(_clusterName, new ZkBaseDataAccessor<>(_gZkClient));
- Builder keyBuilder = accessor.keyBuilder();
-
- LiveInstance newLiveIns = new LiveInstance("newLiveInstance");
- newLiveIns.setHelixVersion("0.6.0");
- newLiveIns.setSessionId("randomSessionId");
- accessor.setProperty(keyBuilder.liveInstance("newLiveInstance"), newLiveIns);
+ // add a new live instance and its instance config.
+ // instance name: localhost_1000
+ int[] newLiveInstance = new int[]{1000};
+ setupInstances(_clusterName, newLiveInstance);
+ setupLiveInstances(_clusterName, newLiveInstance);
Thread.sleep(1000); // wait for the CALLBACK type callback to finish
Assert.assertTrue(_callback._isCallbackInvoked);
@@ -127,8 +119,8 @@ public class TestHelixCustomCodeRunner extends ZkTestBase {
for (int i = 0; i < nodeNb; i++) {
participants[i].syncStop();
}
- accessor.removeProperty(keyBuilder.liveInstance("newLiveInstance"));
- TestHelper.dropCluster(_clusterName, _gZkClient);
+ deleteLiveInstances(_clusterName);
+ deleteCluster(_clusterName);
System.out.println("END " + _clusterName + " at " + new Date(System.currentTimeMillis()));
}