Skip to content

Add doc for tiflash_hash_join_version system variable #20135

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 4 commits into
base: master
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 19 additions & 0 deletions system-variables.md
Original file line number Diff line number Diff line change
Expand Up @@ -5429,6 +5429,25 @@ Query OK, 0 rows affected, 1 warning (0.00 sec)
- `force_streaming`:TiFlash 直接将数据发送到下一阶段的 HashAgg,不进行预聚合操作
- `auto`:TiFlash 根据当前工作负载的聚合度自动选择是否进行预聚合操作

### `tiflash_hash_join_version` <span class="version-mark">从 v9.0.0 版本开始引入</span>

> **警告:**
>
> 该变量控制的功能为实验特性,不建议在生产环境中使用。该功能可能会在未事先通知的情况下发生变化或删除。如果发现 bug,请在 GitHub 上提 [issue](https://github.com/pingcap/tidb/issues) 反馈。

- 作用域:SESSION | GLOBAL
- 是否持久化到集群:是
- 是否受 Hint [SET_VAR](/optimizer-hints.md#set_varvar_namevar_value) 控制:是
- 类型:枚举型
- 默认值:`legacy`
- 可选值:`legacy`、`optimized`
- 控制 TiFlash 是否使用 Hash Join 算子的优化版。默认值为 `legacy`,代表不使用优化版。若设置为 `optimized`,TiFlash 在执行 Hash Join 算子时将使用其优化版,以提升 Hash Join 性能。

> **注意:**
>
> - 目前,仅 Inner Join 类型的连接操作支持优化版的 Hash Join。对于其他类型的连接操作,即使将该变量设成 `optimized`,TiFlash 也不会使用优化版的 Hash Join。
> - 目前,TiFlash 中优化版的 Hash Join 不支持在内存使用超限时落盘内存数据。如果 [`tiflash_mem_quota_query_per_node`](/system-variables.md#tiflash_mem_quota_query_per_node-从-v740-版本开始引入) 和 [`tiflash_query_spill_ratio`](/system-variables.md#tiflash_query_spill_ratio-从-v740-版本开始引入) 均大于 0, 或者 [tidb_max_bytes_before_tiflash_external_join](/system-variables.md#tidb_max_bytes_before_tiflash_external_join-从-v700-版本开始引入) 大于 0,TiFlash 将不会使用优化版的 Hash Join。

### `tikv_client_read_timeout` <span class="version-mark">从 v7.4.0 版本开始引入</span>

- 作用域:SESSION | GLOBAL
Expand Down