From 8187d7c5df34c3f6b3714d1439d733a3957777f4 Mon Sep 17 00:00:00 2001 From: lee123lee123 Date: Thu, 28 Feb 2019 19:04:14 +0800 Subject: [PATCH 1/3] =?UTF-8?q?Issues=20#1460=20=20=E4=BF=AE=E6=94=B9utf8?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=B8=A6=E8=A1=A8=E6=83=85=E5=AD=97=E7=AC=A6?= =?UTF-8?q?=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../otter/canal/client/adapter/es/test/sync/db_schema.sql | 6 +++--- .../src/main/resources/spring/tsdb/sql/create_table.sql | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/client-adapter/elasticsearch/src/test/java/com/alibaba/otter/canal/client/adapter/es/test/sync/db_schema.sql b/client-adapter/elasticsearch/src/test/java/com/alibaba/otter/canal/client/adapter/es/test/sync/db_schema.sql index bff2e118..c7274ca2 100644 --- a/client-adapter/elasticsearch/src/test/java/com/alibaba/otter/canal/client/adapter/es/test/sync/db_schema.sql +++ b/client-adapter/elasticsearch/src/test/java/com/alibaba/otter/canal/client/adapter/es/test/sync/db_schema.sql @@ -7,7 +7,7 @@ CREATE TABLE `label` ( `user_id` bigint(20) NOT NULL, `label` varchar(30) NOT NULL, PRIMARY KEY (`id`) -) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8; +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4; -- ---------------------------- -- Table structure for role @@ -17,7 +17,7 @@ CREATE TABLE `role` ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `role_name` varchar(30) NOT NULL, PRIMARY KEY (`id`) -) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8; +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4; -- ---------------------------- -- Table structure for user @@ -29,7 +29,7 @@ CREATE TABLE `user` ( `c_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP, `role_id` bigint(20) DEFAULT NULL, PRIMARY KEY (`id`) -) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8; +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4; insert into user (id,name,role_id) values (1,'Eric',1); insert into role (id,role_name) values (1,'admin'); diff --git a/deployer/src/main/resources/spring/tsdb/sql/create_table.sql b/deployer/src/main/resources/spring/tsdb/sql/create_table.sql index 322bc2b6..8cb82c82 100644 --- a/deployer/src/main/resources/spring/tsdb/sql/create_table.sql +++ b/deployer/src/main/resources/spring/tsdb/sql/create_table.sql @@ -14,7 +14,7 @@ CREATE TABLE IF NOT EXISTS `meta_snapshot` ( KEY `destination` (`destination`), KEY `destination_timestamp` (`destination`,`binlog_timestamp`), KEY `gmt_modified` (`gmt_modified`) -) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COMMENT='表结构记录表快照表'; +) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='表结构记录表快照表'; CREATE TABLE IF NOT EXISTS `meta_history` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', @@ -36,4 +36,4 @@ CREATE TABLE IF NOT EXISTS `meta_history` ( KEY `destination` (`destination`), KEY `destination_timestamp` (`destination`,`binlog_timestamp`), KEY `gmt_modified` (`gmt_modified`) -) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COMMENT='表结构变化明细表'; \ No newline at end of file +) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='表结构变化明细表'; \ No newline at end of file From 7abf50f233867934c9a4d0d5011a66cf3e1d782e Mon Sep 17 00:00:00 2001 From: dragonlong1986 Date: Sat, 2 Mar 2019 10:25:19 +0800 Subject: [PATCH 2/3] =?UTF-8?q?key=E6=94=B9=E6=88=90=E5=A4=A7=E5=86=99?= =?UTF-8?q?=EF=BC=8C=E5=B0=8F=E5=86=99=E4=B8=8D=E4=BC=9A=E7=94=9F=E6=95=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- deployer/src/main/resources/canal.properties | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/deployer/src/main/resources/canal.properties b/deployer/src/main/resources/canal.properties index 8b5c09fc..30049c00 100644 --- a/deployer/src/main/resources/canal.properties +++ b/deployer/src/main/resources/canal.properties @@ -78,8 +78,8 @@ canal.instance.tsdb.snapshot.interval = 24 canal.instance.tsdb.snapshot.expire = 360 # aliyun ak/sk , support rds/mq -canal.aliyun.accesskey = -canal.aliyun.secretkey = +canal.aliyun.accessKey = +canal.aliyun.secretKey = ################################################# ######### destinations ############# @@ -117,4 +117,4 @@ canal.mq.compressionType = none canal.mq.acks = all # use transaction for kafka flatMessage batch produce canal.mq.transaction = false -#canal.mq.properties. = \ No newline at end of file +#canal.mq.properties. = From 64ca62b986db41eaedf9bd425e501f4c229c38d1 Mon Sep 17 00:00:00 2001 From: dragonlong1986 Date: Tue, 5 Mar 2019 17:39:56 +0800 Subject: [PATCH 3/3] update --- .../com/alibaba/otter/canal/deployer/CanalConstants.java | 1 + .../java/com/alibaba/otter/canal/deployer/CanalStater.java | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/deployer/src/main/java/com/alibaba/otter/canal/deployer/CanalConstants.java b/deployer/src/main/java/com/alibaba/otter/canal/deployer/CanalConstants.java index f387e1b4..45cffa5a 100644 --- a/deployer/src/main/java/com/alibaba/otter/canal/deployer/CanalConstants.java +++ b/deployer/src/main/java/com/alibaba/otter/canal/deployer/CanalConstants.java @@ -49,6 +49,7 @@ public class CanalConstants { public static final String CANAL_MQ_COMPRESSION_TYPE = ROOT + "." + "mq.compressionType"; public static final String CANAL_MQ_ACKS = ROOT + "." + "mq.acks"; public static final String CANAL_MQ_TRANSACTION = ROOT + "." + "mq.transaction"; + public static final String CANAL_MQ_PRODUCERGROUP = ROOT + "." + "mq.producerGroup"; public static final String CANAL_ALIYUN_ACCESSKEY = ROOT + "." + "aliyun.accessKey"; public static final String CANAL_ALIYUN_SECRETKEY = ROOT + "." + "aliyun.secretKey"; public static final String CANAL_MQ_PROPERTIES = ROOT + "." + "mq.properties"; diff --git a/deployer/src/main/java/com/alibaba/otter/canal/deployer/CanalStater.java b/deployer/src/main/java/com/alibaba/otter/canal/deployer/CanalStater.java index 05c8c6f0..a3d6035f 100644 --- a/deployer/src/main/java/com/alibaba/otter/canal/deployer/CanalStater.java +++ b/deployer/src/main/java/com/alibaba/otter/canal/deployer/CanalStater.java @@ -164,6 +164,11 @@ public class CanalStater { mqProperties.setTransaction(Boolean.valueOf(transaction)); } + String producerGroup = CanalController.getProperty(properties, CanalConstants.CANAL_MQ_PRODUCERGROUP); + if (!StringUtils.isEmpty(producerGroup)) { + mqProperties.setProducerGroup(producerGroup); + } + for (Object key : properties.keySet()) { key = StringUtils.trim(key.toString()); if (((String) key).startsWith(CanalConstants.CANAL_MQ_PROPERTIES)) {