From 2d88d803ee46a6412ded38b74ff72bad97ece05e Mon Sep 17 00:00:00 2001 From: mcy Date: Thu, 17 Jan 2019 10:52:27 +0800 Subject: [PATCH 1/2] merge #1440 and fixed #1430 --- .../com/alibaba/otter/canal/deployer/CanalController.java | 5 ----- 1 file changed, 5 deletions(-) diff --git a/deployer/src/main/java/com/alibaba/otter/canal/deployer/CanalController.java b/deployer/src/main/java/com/alibaba/otter/canal/deployer/CanalController.java index 27d21164..bc58e9f7 100644 --- a/deployer/src/main/java/com/alibaba/otter/canal/deployer/CanalController.java +++ b/deployer/src/main/java/com/alibaba/otter/canal/deployer/CanalController.java @@ -68,7 +68,6 @@ public class CanalController { private CanalInstanceGenerator instanceGenerator; private ZkClientx zkclientx; - private String zkServers; private CanalMQStarter canalMQStarter; @@ -133,7 +132,6 @@ public class CanalController { } final String zkServers = getProperty(properties, CanalConstants.CANAL_ZKSERVERS); if (StringUtils.isNotEmpty(zkServers)) { - this.zkServers = zkServers; zkclientx = ZkClientx.getZkClient(zkServers); // 初始化系统目录 zkclientx.createPersistent(ZookeeperPathUtils.DESTINATION_ROOT_NODE, true); @@ -508,9 +506,6 @@ public class CanalController { if (zkclientx != null) { zkclientx.close(); - if (zkServers != null) { - ZkClientx.removeZkClient(zkServers); - } } if (instanceConfigs != null) { From ba9d9dea6d846b97e052b4dc071ac58e49017088 Mon Sep 17 00:00:00 2001 From: mcy Date: Thu, 17 Jan 2019 11:27:12 +0800 Subject: [PATCH 2/2] fixed #1433 --- .../com/alibaba/otter/canal/deployer/CanalController.java | 1 + .../com/alibaba/otter/canal/meta/ZooKeeperMetaManager.java | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/deployer/src/main/java/com/alibaba/otter/canal/deployer/CanalController.java b/deployer/src/main/java/com/alibaba/otter/canal/deployer/CanalController.java index bc58e9f7..d8ca17fd 100644 --- a/deployer/src/main/java/com/alibaba/otter/canal/deployer/CanalController.java +++ b/deployer/src/main/java/com/alibaba/otter/canal/deployer/CanalController.java @@ -508,6 +508,7 @@ public class CanalController { zkclientx.close(); } + //关闭时清理缓存 if (instanceConfigs != null) { instanceConfigs.clear(); } diff --git a/meta/src/main/java/com/alibaba/otter/canal/meta/ZooKeeperMetaManager.java b/meta/src/main/java/com/alibaba/otter/canal/meta/ZooKeeperMetaManager.java index 357f1293..2e3fdde5 100644 --- a/meta/src/main/java/com/alibaba/otter/canal/meta/ZooKeeperMetaManager.java +++ b/meta/src/main/java/com/alibaba/otter/canal/meta/ZooKeeperMetaManager.java @@ -56,7 +56,7 @@ public class ZooKeeperMetaManager extends AbstractCanalLifeCycle implements Cana } public void stop() { - zkClientx = null; + zkClientx = null; //关闭时置空 super.stop(); } @@ -102,7 +102,7 @@ public class ZooKeeperMetaManager extends AbstractCanalLifeCycle implements Cana } public List listAllSubscribeInfo(String destination) throws CanalMetaManagerException { - if (zkClientx == null) { + if (zkClientx == null) { //重新加载时可能为空 return new ArrayList(); } String path = ZookeeperPathUtils.getDestinationPath(destination);