ticdc 同步kafka

【 TiDB 使用环境】生产环境
【 TiDB 版本】7.5.1
【复现路径】做过哪些操作出现的问题
【遇到的问题:问题现象及影响】
创建同步任务报错
ticdc 同步到kafka 根据index 索引分区 报错
Error: [CDC:ErrDispatcherFailed]index not found when verify the table, table: wallet_common.t_hub_bury_point, index:

同样的配置在7.5.3 可以,在7.5.1 不行

配置文件
case-sensitive = true
[filter]
ignore-txn-start-ts = [1, 2]
rules = [‘test.t_hub_bury_point’]
[mounter]
worker-num = 8
[sink]
dispatchers = [
{matcher = [‘test.t_hub_bury_point’], topic = “cdc_t_hub_bury_point”, partition = “index-value” }
]

protocol = “canal-json”

1 个赞

参考这个看看。

根据您提供的信息和搜索结果,您在TiDB 7.5.1版本中遇到的问题可能与以下几个因素有关:

  1. 版本兼容性问题

    • 您提到同样的配置在7.5.3版本可以正常工作,但在7.5.1版本中不行。这可能意味着7.5.1版本中存在某些bug或者功能限制,而在7.5.3版本中得到了修复或改进。
  2. 索引问题

    • 错误信息提示“index not found when verify the table”,这表明在尝试根据索引分区时,TiDB无法找到指定的索引。请检查wallet_common.t_hub_bury_point表是否确实存在对应的索引,并且索引名称没有拼写错误。
  3. 配置文件问题

    • 您提供的配置文件中,dispatchers部分的配置可能有语法错误。正确的格式应该是将dispatchers作为一个列表,其中每个元素是一个字典,包含matchertopic等键。您的配置中dispatchers列表内缺少了逗号分隔,正确的配置应该如下:
      [sink]
      dispatchers = [
        {matcher = [“test.t_hub_bury_point”], topic = “cdc_t_hub_bury_point”, partition = “index-value”}
      ]
      
    • 另外,protocol字段的值“canal-json”应该是小写,正确的应该是“canal-json”
  4. TiDB CDC 配置和使用

    • 根据TiDB社区的近期问题总结,可能需要调整CDC同步配置,去除重叠的表来解决问题。
  5. 已知BUG

    • 对于版本v6.5.6,存在一个已知的BUG,如果在删除一个失败的CDC任务后,告警仍然存在,可以尝试创建同名任务,不同步任何表,然后删除。 虽然这个BUG是针对v6.5.6版本的,但如果您在7.5.1版本中遇到类似的问题,也可以尝试这种方法。