TiCDC多线程出现死锁:error="[CDC:ErrMySQLTxnError]Error 1213: Deadlock found when trying to get lock

最近内部测试发现当下游 MySQL 存在数据时,TiCDC 多线程同步可能会使 MySQL 产生 deadlock。

比如用 tiup bench tpcc 同时向上游 TiDB 和下游 MySQL 灌入数据,然后再用 TiCDC 将上游 TiDB 的数据同步到下游,同步过程中可能会遇到 Deadlock 报错。

同样的,如果用 TiCDC 反复同步同一批数据到 MySQL 也有可能产生 Deadlock。

具体原因还在调查中。