【TiDB 版本】 4.0.11
【TiCDC 版本 】 4.0.11
背景:
整库以canal-json的格式往Kafka同步数据。
创建命令:
22点创建,TSO指向20点
cdc cli changefeed create --start-ts=423484147839795973 --sink-uri=“kafka://kafka.ld-hadoop.com:29092/dw_tidb_binlog_search_sync_risk” --changefeed-id=“kj-search-sync-risk” --config=/data/cdc_file/kj-search-sync-risk.toml
423484147839795973 为 19:57
配置文件:
case-sensitive = true
enable-old-value = true
[filter]
rules = [‘search_sync_risk.’]
[mounter]
worker-num = 16
[sink]
dispatchers = [
{matcher = ['search_sync_risk.’], dispatcher = “table”},
]
protocol = “canal-json”
[cyclic-replication]
enable = false
replica-id = 1
sync-ddl = true
运行一段时间后发现 checkpoint-ts 为 423484455360921603 (20:16),一直不更新。但是 Kafka 仍然正常在进数据。
重启同步任务后报错:
“[CDC:ErrKafkaFlushUnfished]flush not finished before producer close”
这种情况正常吗? checkpoint-ts 更新逻辑是什么样的啊。