From a68bd288521127293dc9b7f48393e234a2a9d74d Mon Sep 17 00:00:00 2001 From: zhikuodai Date: Thu, 21 Feb 2019 22:04:06 +0800 Subject: [PATCH] =?UTF-8?q?CanalParameter=E7=B1=BB=E6=B7=BB=E5=8A=A0parall?= =?UTF-8?q?el=E5=8F=82=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../instance/manager/CanalInstanceWithManager.java | 4 +++- .../instance/manager/model/CanalParameter.java | 14 ++++++++++++-- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/instance/manager/src/main/java/com/alibaba/otter/canal/instance/manager/CanalInstanceWithManager.java b/instance/manager/src/main/java/com/alibaba/otter/canal/instance/manager/CanalInstanceWithManager.java index 11091695..f141a985 100644 --- a/instance/manager/src/main/java/com/alibaba/otter/canal/instance/manager/CanalInstanceWithManager.java +++ b/instance/manager/src/main/java/com/alibaba/otter/canal/instance/manager/CanalInstanceWithManager.java @@ -59,7 +59,7 @@ import com.alibaba.otter.canal.store.model.BatchMode; /** * 单个canal实例,比如一个destination会独立一个实例 - * + * * @author jianghang 2012-7-11 下午09:26:51 * @version 1.0.0 */ @@ -294,6 +294,7 @@ public class CanalInstanceWithManager extends AbstractCanalInstance { mysqlEventParser.setFallbackIntervalInSeconds(parameters.getFallbackIntervalInSeconds()); mysqlEventParser.setProfilingEnabled(false); mysqlEventParser.setFilterTableError(parameters.getFilterTableError()); + mysqlEventParser.setParallel(parameters.isParallel()); mysqlEventParser.setIsGTIDMode(BooleanUtils.toBoolean(parameters.getGtidEnable())); // tsdb if (parameters.getTsdbSnapshotInterval() != null) { @@ -340,6 +341,7 @@ public class CanalInstanceWithManager extends AbstractCanalInstance { localBinlogEventParser.setDetectingEnable(parameters.getDetectingEnable()); localBinlogEventParser.setDetectingIntervalInSeconds(parameters.getDetectingIntervalInSeconds()); localBinlogEventParser.setFilterTableError(parameters.getFilterTableError()); + localBinlogEventParser.setParallel(parameters.isParallel()); // 数据库信息,反查表结构时需要 if (!CollectionUtils.isEmpty(dbAddresses)) { localBinlogEventParser.setMasterInfo(new AuthenticationInfo(dbAddresses.get(0), diff --git a/instance/manager/src/main/java/com/alibaba/otter/canal/instance/manager/model/CanalParameter.java b/instance/manager/src/main/java/com/alibaba/otter/canal/instance/manager/model/CanalParameter.java index af3841dd..6d7e6ebf 100644 --- a/instance/manager/src/main/java/com/alibaba/otter/canal/instance/manager/model/CanalParameter.java +++ b/instance/manager/src/main/java/com/alibaba/otter/canal/instance/manager/model/CanalParameter.java @@ -12,7 +12,7 @@ import com.alibaba.otter.canal.common.utils.CanalToStringStyle; /** * canal运行相关参数 - * + * * @author jianghang 2012-7-4 下午02:52:52 * @version 1.0.0 */ @@ -118,6 +118,8 @@ public class CanalParameter implements Serializable { private String standbyLogfileName = null; // standby起始位置 private Long standbyLogfileOffest = null; private Long standbyTimestamp = null; + private boolean parallel = true; + public static enum RunMode { @@ -328,7 +330,7 @@ public class CanalParameter implements Serializable { /** * 数据来源描述 - * + * * @author jianghang 2012-12-26 上午11:05:20 * @version 4.1.5 */ @@ -982,6 +984,14 @@ public class CanalParameter implements Serializable { this.tsdbSnapshotExpire = tsdbSnapshotExpire; } + public boolean isParallel() { + return parallel; + } + + public void setParallel(boolean parallel) { + this.parallel = parallel; + } + public String toString() { return ToStringBuilder.reflectionToString(this, CanalToStringStyle.DEFAULT_STYLE); }