Skip to content
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
18 changes: 18 additions & 0 deletions system-variables.md
Original file line number Diff line number Diff line change
Expand Up @@ -4104,6 +4104,24 @@ mysql> desc select count(distinct a) from test.t;
- Default value: `OFF`
- This variable controls whether to enable the [Cross-database binding](/sql-plan-management.md#cross-database-binding) feature.

### tidb_opt_enable_no_decorrelate_in_select <span class="version-mark">New in v8.5.4</span>

- Scope: SESSION | GLOBAL
- Persists to cluster: Yes
- Applies to hint [SET_VAR](/optimizer-hints.md#set_varvar_namevar_value): Yes
- Type: Boolean
- Default value: `OFF`
- This variable controls whether to apply the hint [`NO_DECORRELATE`](/optimizer-hints.md#no_decorrelate) at the session/global level for all queries with a subquery in the select list.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

low

For better readability, it's better to use "session or global" instead of "session/global". Also, SELECT is a SQL keyword and should be enclosed in backticks for consistency.1

Suggested change
- This variable controls whether to apply the hint [`NO_DECORRELATE`](/optimizer-hints.md#no_decorrelate) at the session/global level for all queries with a subquery in the select list.
- This variable controls whether to apply the hint [`NO_DECORRELATE`](/optimizer-hints.md#no_decorrelate) at the session or global level for all queries with a subquery in the `SELECT` list.

Style Guide References

Footnotes

  1. Code snippets, command names, options, and paths should be in backticks (`).


### tidb_opt_enable_semi_join_rewrite <span class="version-mark">New in v8.5.4</span>

- Scope: SESSION | GLOBAL
- Persists to cluster: Yes
- Applies to hint [SET_VAR](/optimizer-hints.md#set_varvar_namevar_value): No
- Type: Boolean
- Default value: `OFF`
- This variable controls whether to apply the hint [`SEMI_JOIN_REWRITE`](/optimizer-hints.md#semi_join_rewrite) at the session/global level for all queries that contain subqueries.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The description states that this variable applies to 'all queries that contain subqueries'. However, the documentation for the SEMI_JOIN_REWRITE hint specifies that it currently only works for EXISTS subqueries. To avoid confusion and ensure technical accuracy, it's better to specify that this variable applies to queries with EXISTS subqueries.1

Also, for better readability, it's better to use 'session or global' instead of 'session/global'.

Suggested change
- This variable controls whether to apply the hint [`SEMI_JOIN_REWRITE`](/optimizer-hints.md#semi_join_rewrite) at the session/global level for all queries that contain subqueries.
- This variable controls whether to apply the hint [`SEMI_JOIN_REWRITE`](/optimizer-hints.md#semi_join_rewrite) at the session or global level for all queries that contain `EXISTS` subqueries.

Style Guide References

Footnotes

  1. Review aspects: ... Technical accuracy and terminology consistency


### tidb_opt_fix_control <span class="version-mark">New in v6.5.3 and v7.1.0</span>

<CustomContent platform="tidb">
Expand Down