Browse Source

Merge pull request #1442 from rewerma/master

fixed #1430
rewerma 6 years ago
parent
commit
cbe88af2e3

+ 1 - 5
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,11 +506,9 @@ public class CanalController {
 
         if (zkclientx != null) {
             zkclientx.close();
-            if (zkServers != null) {
-                ZkClientx.removeZkClient(zkServers);
-            }
         }
 
+        //关闭时清理缓存
         if (instanceConfigs != null) {
             instanceConfigs.clear();
         }

+ 2 - 2
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<ClientIdentity> listAllSubscribeInfo(String destination) throws CanalMetaManagerException {
-        if (zkClientx == null) {
+        if (zkClientx == null) { //重新加载时可能为空
             return new ArrayList<ClientIdentity>();
         }
         String path = ZookeeperPathUtils.getDestinationPath(destination);