执行delete语句时集群出现binlog data is too large错误

为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。

  • 【TiDB 版本】:V3.0.12
  • 【问题描述】:1105 - binlog data is too large (rpc error: code = ResourceExhausted desc = grpc: received message larger than max (1412263892 vs. 1073741824)), Time: 24.288000s

请问,这是哪里报的错? 是 tidb-server 日志中, 还是有使用 binlog 或者其他同步工具同步到下游 tidb ,kafka 之类的?

在使用navicat客户端执行delete语句报错,binlog同步工具下游是file

请问之前调整了参数 txn-total-size-limit 为 1 G 吗? 或者调整了其他参数?

https://docs.pingcap.com/zh/tidb/dev/maintain-tidb-using-tiup#示例

一直没有改变过参数,从部署截止到现在都没有改过

检查下你的参数,把 tiup edit-config 的结果上传下

暂时没有使用到tiup

你这个事务应该是没有执行成功吧,感觉像是tidb对于本身大小事务的限制

是的,这个事物失败了。
但是事物大小本身的限制不是

  • 单个事务包含的 SQL 语句不超过 5000 条(默认)
  • 单条 KV entry 不超过 6MB
  • KV entry 的总条数不超过 30w
  • KV entry 的总大小不超过 100MB

可能是总大小超过了100MB

  • 可以检查一下 txn-total-size-limit 的大小
  • 可以提供一下 tidb 的错误堆栈么

看起来出错的 message 大小超过 1G 了