7.5.1 版本cdc 参数不兼容

【 TiDB 使用环境】生产环境-v7.5.1
在创建cdc 同步任务时报错
问题1:创建任务时不识别配置文件中的enable-old-value = true。 这个配置在6.x 版本之前一直都是正常使用的
去掉这个参数后同步任务可以正常创建。

tiup ctl:v7.5.1  cdc changefeed create  --server=http://1xxxxxx:8324   
--sink-uri="kafka://xxxxxx9092/tidb-supexxx?protocol=canal-json&kafka-version=2.4.1
&partition-num=6&max-message-bytes=10485760&compression=lz4&replication-factor=1"  
--config=/home/tidb/cdctoml/cdc-xxxxxx-kafka.toml  --changefeed-id="cdc-xxxx-kafka"    --sort-engine="unified"

问题2: 在protocol=canal-json 下,如果7.5 不支持enable-old-value 这个参数,那么是否向kafka 传递的消息中还会包含old-value

问题3:不识别配置文件中的参数 index-value

{matcher = ['rtquery.*'], partition = "index-value"}

报错如下:
Error: [CDC:ErrDispatcherFailed]index not found when verify the table, table: rtquery.tblRealtimeSidAIGCCollegeDetailOnline, index:

搜了一下官方文档,从v7.4开始就没有这个配置项了

1 个赞
  1. enable-old-value 参数默认为 true,无需进一步设置。
  2. 依旧输出 old-value
  3. 这应该是一个 bug,需要修复。

bug已反馈,参考https://github.com/pingcap/tiflow/issues/10709
本次建议方案:
针对问题1、2:
建议:enable-old-value 无需配置即可正常相当于on
针对问题3:
建议:partition = “ts”

1 个赞

:+1: :+1: :+1:

1 个赞

针对问题3: 使用ts 配置需要下游消费端进行排序,否则下游最终数据会有错乱。
现在想确认下,使用partition=“column” 能否起到类似 index-value 的效果,提升消费的并发并能保证数据一致性?