diff --git a/reference/configuration/tidb-server/configuration-file.md b/reference/configuration/tidb-server/configuration-file.md index 3070667680d0..74ed5ada45ae 100644 --- a/reference/configuration/tidb-server/configuration-file.md +++ b/reference/configuration/tidb-server/configuration-file.md @@ -252,6 +252,12 @@ TiDB 配置文件比命令行参数支持更多的选项。你可以在 [config/ + 默认值:0 + 这个配置只有在 prepared-plan-cache.enabled 为 true 的情况才会生效。在 LRU 的 size 大于 prepared-plan-cache.capacity 的情况下,也会剔除 LRU 中的元素。 +### `txn-total-size-limit` + ++ TiDB 事务大小限制 ++ 默认值:104857600 (Byte) ++ 单个事务中,所有 key-value 记录的总大小不能超过该限制。注意,如果开启了 `binlog`,该配置项的值不能超过 `104857600`(表示 100MB),因为 binlog 组件不支持同步的事务过大。如果 `binlog` 没开启,该配置项的最大值不超过 `10737418240`(表示 10GB)。 + ### `stmt-count-limit` + TiDB 一个事务允许的最大语句条数限制。 diff --git a/reference/transactions/overview.md b/reference/transactions/overview.md index 2c88227ca50e..752f75ec56c9 100644 --- a/reference/transactions/overview.md +++ b/reference/transactions/overview.md @@ -209,3 +209,5 @@ COMMIT; 为了使性能达到最优,建议每 100~500 行写入一个事务。 TiDB 设置了单个事务的键值对的总大小不超过 100 MB,这个默认值可以通过配置文件中的配置项 `txn-total-size-limit` 进行修改,最大支持到 10GB。实际的单个事务大小限制还取决于用户的内存,执行大事务时 TiDB 进程的内存消耗大约是事务大小 6 倍以上。 + +在 4.0 以前的版本,TiDB 限制了单个事务的键值对的总数量不超过 30 万条,在 4.0 之后的版本没有这项限制。