ticdc无法同步ddl操作

【 TiDB 使用环境】生产环境 /测试/ Poc
k8s中运行的测试环境
【 TiDB 版本】
v5.4.1
【复现路径】做过哪些操作出现的问题
正常开启ticdc到mysql、kafka的增量数据同步
【遇到的问题:可以正常同步dml操作到kafka、mysql,但无法ddl操作同步到mysql、kafka

【资源配置】

【附件:截图/日志/监控】
测试程序:

[root@vm10-0-2-6 ticdc]# cat operate.sh
namespace=$bbb
Db=$1
Host=`kubectl get svc -n $namespace | grep basic-tidb | grep -v peer | awk '{print $3}'`

while true
do
        if [[ $2 == "dml" ]];then
                createTime=`date "+%Y-%m-%d %H:%M:%S"`
                echo "dml >>>>>>>> $createTime"
                mysql -u$User -p$Passwd -h $Host -P 4000 -e "create database if not exists $Db;use $Db;CREATE TABLE if not exists aaa (id int(11) NOT NULL AUTO_INCREMENT,create_time datetime DEFAULT NULL,PRIMARY KEY (id)) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4;insert into aaa(create_time) values ('$createTime');"
        else
                suffix=`date "+%H_%M_%S"`
                echo "ddl >>>>>>>> $suffix"
                mysql -u$User -p$Passwd -h $Host -P 4000 -e "create database if not exists $Db;use $Db;CREATE TABLE if not exists aaa_${suffix} (id int(11) NOT NULL AUTO_INCREMENT,create_time datetime DEFAULT NULL,PRIMARY KEY (id)) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4;"
        fi
        sleep 1
done

dml同步监控

ddl同步监控

看上去的配置不太够~

TiCDC 在 v6.2.0 版本支持过滤 DDL 功能,你可以升级试试看你的问题是否还存在~

上游tidb 模拟不断创建DB语句 发送给下游,可以query changefeed 看看cf是什么状态?

从监控上看 checkpoint 一直在向前推进,说明有 DDL 在同步中。目前,TiCDC 同步的 DDL 的速度较慢,所以会看到延时上升的情况,一般来说 CREATE TABLE 这种 DDL 单个的同步延时在 0.1~1 秒之间。

1 个赞