From ab67bacee262182107ee665e600ab9c58906c45b Mon Sep 17 00:00:00 2001 From: Aolin Date: Tue, 10 Sep 2024 16:08:13 +0800 Subject: [PATCH] optimizer-fix-controls: Add optimizer fix control 47400 for controlling zero estRows Signed-off-by: Aolin --- optimizer-fix-controls.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/optimizer-fix-controls.md b/optimizer-fix-controls.md index 73bedf42147e..753c79dc091d 100644 --- a/optimizer-fix-controls.md +++ b/optimizer-fix-controls.md @@ -71,6 +71,14 @@ SET SESSION tidb_opt_fix_control = '44262:ON,44389:ON'; - 此开关控制优化器进行启发式访问路径选择的阈值。当某个访问路径(如 `Index_A`)的估算行数远小于其他访问路径时(默认为 `1000` 倍),优化器会跳过代价比较直接选择 `Index_A`。 - `0` 表示关闭此启发式访问路径选择策略。 +### [`47400`](https://github.com/pingcap/tidb/issues/47400) 从 v8.4.0 版本开始引入 + +- 默认值:`ON` +- 可选值:`ON`、`OFF` +- 由于查询计划中每个步骤符合条件的行数难以精确估算,优化器通常会为 `estRows` 设置一个较小的值。此开关控制是否限制 `estRows` 的最小值。 +- `ON`:将 `estRows` 的最小值设置为 1。这是 v8.4.0 中引入的新行为,与其他数据库一致。 +- `OFF`:不限制 `estRows` 的最小值,与 v8.4.0 之前版本的行为保持一致。此时,`estRows` 可能为 0。 + ### [`52869`](https://github.com/pingcap/tidb/issues/52869) 从 v8.1.0 版本开始引入 - 默认值:`OFF`