From aac4d95b19e5370a8034a9c5bc2d58fee576dff3 Mon Sep 17 00:00:00 2001 From: "zelin.miao" <86755973@qq.com> Date: Fri, 5 Dec 2014 23:56:42 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=BA=86=E9=87=8D=E5=A4=8D?= =?UTF-8?q?=E8=AE=A2=E9=98=85=E6=B2=A1=E6=9C=89=E7=9C=9F=E6=AD=A3=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E8=BF=87=E6=BB=A4=E5=99=A8=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../canal/instance/spring/CanalInstanceWithSpring.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/instance/spring/src/main/java/com/alibaba/otter/canal/instance/spring/CanalInstanceWithSpring.java b/instance/spring/src/main/java/com/alibaba/otter/canal/instance/spring/CanalInstanceWithSpring.java index 67352451..fc421f5f 100644 --- a/instance/spring/src/main/java/com/alibaba/otter/canal/instance/spring/CanalInstanceWithSpring.java +++ b/instance/spring/src/main/java/com/alibaba/otter/canal/instance/spring/CanalInstanceWithSpring.java @@ -13,7 +13,9 @@ import com.alibaba.otter.canal.instance.core.CanalInstanceSupport; import com.alibaba.otter.canal.meta.CanalMetaManager; import com.alibaba.otter.canal.parse.CanalEventParser; import com.alibaba.otter.canal.parse.inbound.AbstractEventParser; +import com.alibaba.otter.canal.parse.inbound.BinlogParser; import com.alibaba.otter.canal.parse.inbound.group.GroupEventParser; +import com.alibaba.otter.canal.parse.inbound.mysql.dbsync.LogEventConvert; import com.alibaba.otter.canal.protocol.CanalEntry; import com.alibaba.otter.canal.protocol.ClientIdentity; import com.alibaba.otter.canal.sink.CanalEventSink; @@ -63,6 +65,7 @@ public class CanalInstanceWithSpring extends CanalInstanceSupport implements Can public boolean subscribeChange(ClientIdentity identity) { if (StringUtils.isNotEmpty(identity.getFilter())) { + logger.info("subscribe filter change to "+identity.getFilter()); AviaterRegexFilter aviaterFilter = new AviaterRegexFilter(identity.getFilter()); boolean isGroup = (eventParser instanceof GroupEventParser); @@ -74,6 +77,11 @@ public class CanalInstanceWithSpring extends CanalInstanceSupport implements Can } } else { ((AbstractEventParser) eventParser).setEventFilter(aviaterFilter); + //add by zelin.miao + BinlogParser binlogParser=((AbstractEventParser) eventParser).getBinlogParser(); + if (binlogParser!=null && binlogParser instanceof LogEventConvert) { + ((LogEventConvert)binlogParser).setNameFilter(aviaterFilter); + } } }