通过cdc同步数据到kafka

【 TiDB 使用环境】
【概述】:场景 + 问题概述
通过cdc同步数据到kafka,同步不正常, “tso”: 428531452481372172,
“checkpoint”: “2021-10-20 16:16:00.015”,这两个值不再变化

那这时,我们要如何排查呢?

【背景】:做过哪些操作
kafka是三节点集群,某些原因,kafka连接不上,重启后可以正常连接。
我们重新创建了cdc同步任务,步骤如下:
tiup ctl cdc capture list --pd=http://10.103.236.178:3379

创建同步任务,指定配置文件
tiup ctl cdc changefeed create --pd=http://10.103.236.178:3379
–sink-uri=“kafka://10.99.110.10:9092/tidb-xiqu178-cdc-to-canal?kafka-version=2.4.1&partition-num=3&max-message-bytes=67108864&replication-factor=1”
–changefeed-id=“cdc-kafka-canal-json”
–config cdc_canal_json.conf

配置文件内容
cat cdc_canal_json.conf


查看changefeed状态
tiup ctl cdc changefeed list --pd=http://10.103.236.178:3379
tiup ctl cdc changefeed query -s --pd=http://10.103.236.178:3379 --changefeed-id=cdc-kafka-canal-json

查看processor状态
tiup ctl cdc processor list --pd=http://10.103.236.178:3379
tiup ctl cdc processor query --pd=http://10.103.236.178:3379 --changefeed-id=cdc-kafka-canal-json --capture-id e3d704b0-5b42-4f14-8b90-759a3eb5961e

tiup ctl cdc changefeed update --pd=http://10.103.236.178:3379
–sink-uri=“kafka://10.99.110.10:9092/tidb-xiqu178-cdc-to-canal?kafka-version=2.4.1&partition-num=3&max-message-bytes=67108864&replication-factor=1”
–changefeed-id=“cdc-kafka-canal-json”
–config cdc_canal_json.conf

停止同步任务
tiup ctl cdc changefeed pause --pd=http://10.103.236.178:3379 --changefeed-id cdc-kafka-canal-json

恢复同步任务
tiup ctl cdc changefeed resume --pd=http://10.103.236.178:3379 --changefeed-id cdc-kafka-canal-json

删除同步任务
tiup ctl cdc changefeed remove --pd=http://10.103.236.178:3379 --changefeed-id cdc-kafka-canal-json --force

【现象】:业务和数据库现象
【问题】:当前遇到的问题
【业务影响】:
【TiDB 版本】:
v5.1.1

【附件】:

2 个赞

当前 ticdc 日志报什么错吗?麻烦上传下。

[cdc.tar.gz|attachment](2.4 MB)

是否触了bug?
https://github.com/pingcap/ticdc/issues/2391

参考:CDC:ErrGCTTLExceeded]the checkpoint-ts(427281646879768579) lag of the changefeed(tidb-polardb-task-001) %!d(MISSING) has exceeded the GC TTL

从日志的报错信息中,确实有大量的如下报错信息:

[ERROR] [changefeed.go:106] ["an error occurred in Owner"] [changefeedID=cdc-kafka-canal-json] [error="[CDC:ErrGCTTLExceeded]the checkpoint-ts(428531452481372172) lag of the changefeed(cdc-kafka-canal-json) has exceeded the GC TTL"] 

和上面的 bug issue 现象高度类似,麻烦将 ticdc 升级至 v5.1.2 版本后再观察是是否有问题,谢谢。

1 个赞

有遇到tidb-cdc读取数据乱码的情况吗?怎么解决?

没有遇到过。
在官方文档中也没找到相关字符集设置,可能需要官方解答了。

建议重开一个新贴,注明版本和复现路径。

此话题已在最后回复的 1 分钟后被自动关闭。不再允许新回复。