You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@dubbo.apache.org by li...@apache.org on 2019/05/23 03:20:17 UTC
[incubator-dubbo] branch master updated: check curator event with
empty data value (#4126)
This is an automated email from the ASF dual-hosted git repository.
liujun pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-dubbo.git
The following commit(s) were added to refs/heads/master by this push:
new 5285952 check curator event with empty data value (#4126)
5285952 is described below
commit 5285952a2ab80780133b4f9b1a9bb308ac9978a0
Author: cvictory <sh...@gmail.com>
AuthorDate: Thu May 23 11:20:11 2019 +0800
check curator event with empty data value (#4126)
fixes #3866
---
.../remoting/zookeeper/curator/CuratorZookeeperClient.java | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/dubbo-remoting/dubbo-remoting-zookeeper/src/main/java/org/apache/dubbo/remoting/zookeeper/curator/CuratorZookeeperClient.java b/dubbo-remoting/dubbo-remoting-zookeeper/src/main/java/org/apache/dubbo/remoting/zookeeper/curator/CuratorZookeeperClient.java
index e3a06e5..b14cd11 100644
--- a/dubbo-remoting/dubbo-remoting-zookeeper/src/main/java/org/apache/dubbo/remoting/zookeeper/curator/CuratorZookeeperClient.java
+++ b/dubbo-remoting/dubbo-remoting-zookeeper/src/main/java/org/apache/dubbo/remoting/zookeeper/curator/CuratorZookeeperClient.java
@@ -17,6 +17,8 @@
package org.apache.dubbo.remoting.zookeeper.curator;
import org.apache.dubbo.common.URL;
+import org.apache.dubbo.common.logger.Logger;
+import org.apache.dubbo.common.logger.LoggerFactory;
import org.apache.dubbo.common.utils.StringUtils;
import org.apache.dubbo.remoting.zookeeper.ChildListener;
import org.apache.dubbo.remoting.zookeeper.DataListener;
@@ -49,6 +51,8 @@ import static org.apache.dubbo.common.constants.CommonConstants.TIMEOUT_KEY;
public class CuratorZookeeperClient extends AbstractZookeeperClient<CuratorZookeeperClient.CuratorWatcherImpl, CuratorZookeeperClient.CuratorWatcherImpl> {
+ protected static final Logger logger = LoggerFactory.getLogger(CuratorZookeeperClient.class);
+
static final Charset CHARSET = Charset.forName("UTF-8");
private final CuratorFramework client;
private Map<String, TreeCache> treeCacheMap = new ConcurrentHashMap<>();
@@ -288,6 +292,9 @@ public class CuratorZookeeperClient extends AbstractZookeeperClient<CuratorZooke
@Override
public void childEvent(CuratorFramework client, TreeCacheEvent event) throws Exception {
if (dataListener != null) {
+ if (logger.isInfoEnabled()) {
+ logger.info("listen the zookeeper changed. The changed data:" + event.getData());
+ }
TreeCacheEvent.Type type = event.getType();
EventType eventType = null;
String content = null;
@@ -296,12 +303,12 @@ public class CuratorZookeeperClient extends AbstractZookeeperClient<CuratorZooke
case NODE_ADDED:
eventType = EventType.NodeCreated;
path = event.getData().getPath();
- content = new String(event.getData().getData(), CHARSET);
+ content = event.getData().getData() == null ? "" : new String(event.getData().getData(), CHARSET);
break;
case NODE_UPDATED:
eventType = EventType.NodeDataChanged;
path = event.getData().getPath();
- content = new String(event.getData().getData(), CHARSET);
+ content = event.getData().getData() == null ? "" : new String(event.getData().getData(), CHARSET);
break;
case NODE_REMOVED:
path = event.getData().getPath();