From 58448e559df680b2fe6317dff60c14140fa5be16 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=AE=B8=E9=81=93=E6=9D=B0?= Date: Fri, 16 Apr 2021 21:25:14 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20issue=20#2649=20client-adapter=E5=90=AF?= =?UTF-8?q?=E5=8A=A8=E6=97=B6=E6=8A=9BLinkageError=E5=BC=82=E5=B8=B8?= =?UTF-8?q?=E3=80=81#3073=20client-adapter=E9=80=9A=E8=BF=87=E5=90=AF?= =?UTF-8?q?=E5=8A=A8=E5=8F=82=E6=95=B0=E4=BC=A0=E5=85=A5`canal.tcp.zookeep?= =?UTF-8?q?er.hosts`=E4=B8=BA=E7=A9=BA=E5=80=BC=E6=97=B6=E6=8A=9B=E5=BC=82?= =?UTF-8?q?=E5=B8=B8=20(#3074)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/spi/URLClassExtensionLoader.java | 1 + .../tcp/consumer/CanalTCPConsumer.java | 22 +++++++++++-------- 2 files changed, 14 insertions(+), 9 deletions(-) diff --git a/connector/core/src/main/java/com/alibaba/otter/canal/connector/core/spi/URLClassExtensionLoader.java b/connector/core/src/main/java/com/alibaba/otter/canal/connector/core/spi/URLClassExtensionLoader.java index 7c29d1ab..9b97d3c0 100644 --- a/connector/core/src/main/java/com/alibaba/otter/canal/connector/core/spi/URLClassExtensionLoader.java +++ b/connector/core/src/main/java/com/alibaba/otter/canal/connector/core/spi/URLClassExtensionLoader.java @@ -20,6 +20,7 @@ public class URLClassExtensionLoader extends URLClassLoader { } if (name.startsWith("java.") || name.startsWith("org.slf4j.") || name.startsWith("org.apache.logging") + || name.startsWith("org.apache.zookeeper.") || name.startsWith("org.I0Itec.zkclient.") || name.startsWith("org.apache.commons.logging.")) { // || name.startsWith("org.apache.hadoop.")) // { diff --git a/connector/tcp-connector/src/main/java/com/alibaba/otter/canal/connector/tcp/consumer/CanalTCPConsumer.java b/connector/tcp-connector/src/main/java/com/alibaba/otter/canal/connector/tcp/consumer/CanalTCPConsumer.java index 0046f688..bc7966bf 100644 --- a/connector/tcp-connector/src/main/java/com/alibaba/otter/canal/connector/tcp/consumer/CanalTCPConsumer.java +++ b/connector/tcp-connector/src/main/java/com/alibaba/otter/canal/connector/tcp/consumer/CanalTCPConsumer.java @@ -1,11 +1,5 @@ package com.alibaba.otter.canal.connector.tcp.consumer; -import java.net.InetSocketAddress; -import java.net.SocketAddress; -import java.util.List; -import java.util.Properties; -import java.util.concurrent.TimeUnit; - import com.alibaba.otter.canal.client.CanalConnector; import com.alibaba.otter.canal.client.impl.ClusterCanalConnector; import com.alibaba.otter.canal.client.impl.ClusterNodeAccessStrategy; @@ -18,11 +12,21 @@ import com.alibaba.otter.canal.connector.core.util.MessageUtil; import com.alibaba.otter.canal.connector.tcp.config.TCPConstants; import com.alibaba.otter.canal.protocol.Message; +import org.apache.commons.lang.StringUtils; + +import java.net.InetSocketAddress; +import java.net.SocketAddress; +import java.util.List; +import java.util.Properties; +import java.util.concurrent.TimeUnit; + /** * TCP 消费者连接器, 一个destination对应一个SPI实例 - * + * * @author rewerma 2020-01-30 - * @version 1.0.0 + * @author XuDaojie + * @version 1.1.5 + * @since 1.1.5 */ @SPI("tcp") public class CanalTCPConsumer implements CanalMsgConsumer { @@ -42,7 +46,7 @@ public class CanalTCPConsumer implements CanalMsgConsumer { if (batchSizePro != null) { batchSize = Integer.parseInt(batchSizePro); } - if (host != null) { + if (StringUtils.isNotBlank(host)) { String[] ipPort = host.split(":"); SocketAddress sa = new InetSocketAddress(ipPort[0], Integer.parseInt(ipPort[1])); this.canalConnector = new SimpleCanalConnector(sa, username, password, destination);