Bug 反馈
清晰准确地描述您发现的问题,提供任何可能复现问题的步骤有助于研发同学及时处理问题
【 TiDB 版本】v5.2.1 → v6.1.2
【 Bug 的影响】
主键冲突
【可能的问题复现步骤】
关闭gc 通过BR 先备份 和还原 迁移全量数据
开启 ticdc 开始增量同步 关闭gc
老版本停机 正式切换新版本
【看到的非预期行为】
主键冲突 表上记录的AUTO_INCREMENT值错误 导致取号时 tidb插入数据一直主键冲突
【期望看到的行为】
Bug 反馈
清晰准确地描述您发现的问题,提供任何可能复现问题的步骤有助于研发同学及时处理问题
【 TiDB 版本】v5.2.1 → v6.1.2
【 Bug 的影响】
主键冲突
【可能的问题复现步骤】
关闭gc 通过BR 先备份 和还原 迁移全量数据
开启 ticdc 开始增量同步 关闭gc
老版本停机 正式切换新版本
【看到的非预期行为】
主键冲突 表上记录的AUTO_INCREMENT值错误 导致取号时 tidb插入数据一直主键冲突
【期望看到的行为】
希望有方法能尽快的刷新取号缓存 同时修正 AUTO_INCREMENT
直接更新 AUTO_INCREMENT ,autoid缓存目前好像只能通过重启tidb server方式
已知产品限制,显式插入和隐式分配的冲突问题, ticdc 使用的显式插入,而默认 insert 走的是隐式分配。
问题记录下: https://github.com/pingcap/tidb/issues/2285
官网有说明:
https://docs.pingcap.com/zh/tidb/stable/auto-increment#唯一性保证
我们后续会考虑增强 ticdc 来避免这个问题或补充 ticdc 的使用文档,添加该问题说明。
目前建议通过使用下面的 sql 或重启 tidb 来规避这个问题。
alter table … auto_increment 0
此话题已在最后回复的 60 天后被自动关闭。不再允许新回复。