【 TiDB 使用环境】生产环境 /测试/ Poc
【 TiDB 版本】V7.1.1
【复现路径】
建了一个比较大的组合索引(表数量大概4个亿),导致cdc卡主,报错 [CDC:ErrPDEtcdAPIError]etcd api call error: context deadline exceed, 暂停changefeed, 索引建好后尝试恢复。
恢复cdc后,发现kafka开始有数据生成, 但是changefeed的tso不推进,通过kafka中的消息发现有些表已经推送到最新的消息,但是有些的增量卡住出不来(这个应该tso不推进的原因),但是在错误日志看不到特别的错误信息(有一些错误信息,平时也有,比如: fail to load safepoint from pd / requeested pd is not leader of cluster等)
【遇到的问题:问题现象及影响】
以上有两个问题:
- 建索引导致cdc卡住的问题
- changefeed恢复之后,因为部分表导致整个tso无法推进问题, 看不到原因
基本上上了一定量之后,只能中断很短的时间,时间稍微一长,基本上就没法恢复了,只能重建cdc,丢数据
【资源配置】
pd / tidb-server/ cdc 混合部署*3, 服务器资源 内存256G/48c/ssd 硬件资源没有问题,tikv独立部署
出问题时cdc的相关监控有较大波动部分