-
Notifications
You must be signed in to change notification settings - Fork 2.4k
vtgate: add VEXPLAIN MYSQLPLAN statement #20817
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
ejortegau
wants to merge
38
commits into
vitessio:main
Choose a base branch
from
ejortegau:ejortegau/vexplain-mysqlplan
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
38 commits
Select commit
Hold shift + click to select a range
b6e5aac
vtgate: add VEXPLAIN MYSQLPLAN statement
ejortegau 6b9a248
vtgate: make VEXPLAIN MYSQLPLAN support check an allowlist
ejortegau 40aa115
vtgate: test VEXPLAIN MYSQLPLAN rejects INSERT ... SELECT
ejortegau 6a70115
vtgate: mirror no-route fallback in VEXPLAIN MYSQLPLAN
ejortegau 2faefeb
changelog: document VEXPLAIN MYSQLPLAN baseline-plan limitation
ejortegau 12cabf9
vtgate: bind __upper_limit before EXPLAIN for pushed-down scatter limits
ejortegau 42c6562
vtgate: support explicitly targeted Send plans in VEXPLAIN MYSQLPLAN
ejortegau c83065a
vtadmin: route VEXPLAIN MYSQLPLAN through VExplain result conversion
ejortegau 1e0da3f
vtgate: reject VEXPLAIN MYSQLPLAN in reserved-connection sessions
ejortegau c55ccbf
vtgate: reject sequence next-value queries in VEXPLAIN MYSQLPLAN
ejortegau cc71f06
vtgate: bound VEXPLAIN MYSQLPLAN fanout and account for its shard que…
ejortegau 5026e1d
vtgate: copy bind vars per input when collecting MYSQLPLAN tasks
ejortegau b56aad1
changelog: document VEXPLAIN MYSQLPLAN per-shard EXPLAIN failure beha…
ejortegau 46513b3
vtgate: unify VEXPLAIN plan-description walkers
ejortegau dd306e7
vtgate: count only successfully-explained shards in MYSQLPLAN accounting
ejortegau 878891b
Merge remote-tracking branch 'upstream/main' into ejortegau/vexplain-…
ejortegau b811b48
test/e2e: add unsharded keyspace for VEXPLAIN MYSQLPLAN reserved-conn…
ejortegau cf692e6
vtgate: reject nested query blocks in VEXPLAIN MYSQLPLAN at plan time
ejortegau b8593e6
vtgate: reject VEXPLAIN MYSQLPLAN sequence queries before bypass plan…
ejortegau 0b6608e
vtgate: count completed shards when a MYSQLPLAN EXPLAIN fails
ejortegau f8fc5c1
vtgate: count every attempted shard in MYSQLPLAN accounting
ejortegau 5ef7ad2
vtgate: reject VEXPLAIN MYSQLPLAN advisory lock functions
ejortegau bc3d25b
vtgate: don't pin a VEXPLAIN MYSQLPLAN session for a SET_VAR-only sysvar
ejortegau 2b9f32f
vtgate: reject VEXPLAIN MYSQLPLAN of SQL_CALC_FOUND_ROWS with GROUP B…
ejortegau 0355407
docs: note VEXPLAIN MYSQLPLAN does not table-ACL-check per-shard EXPL…
ejortegau e52ccf9
vtgate: give VEXPLAIN MYSQLPLAN derived-table/view rejection an hones…
ejortegau 04dbb37
vtgate: make MYSQLPLAN shard-query accounting an optional VCursor cap…
ejortegau bdca6b0
vtgate: run VEXPLAIN MYSQLPLAN EXPLAINs through the shared scatter path
ejortegau 6cdbdda
vtgate: drop dead MergeSort entry from VEXPLAIN MYSQLPLAN allowlist
ejortegau ce2eef5
test/e2e: probe MySQL version from the sharded keyspace by name
ejortegau 421d6f3
test/e2e: cover VEXPLAIN MYSQLPLAN scatter fan-out across shards
ejortegau afb986f
vtgate: rename MYSQLPLAN output key to mysql_explain_json_by_shard
ejortegau 5880984
vtgate: fold VEXPLAIN MYSQLPLAN AST checks into one walk
ejortegau ac3f349
vtgate: reject VEXPLAIN MYSQLPLAN DML by statement type
ejortegau e5cd381
vtgate: move mysqlExplainTask into the top type() block
ejortegau 44077e6
vtgate: warn when a MYSQLPLAN shard returns an empty EXPLAIN result
ejortegau eaee2cc
changelog: note VEXPLAIN MYSQLPLAN in-transaction reads pre-tx state
ejortegau aa5d20d
test/e2e: assert VEXPLAIN MYSQLPLAN of INTO OUTFILE/DUMPFILE has no s…
ejortegau File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
5 changes: 5 additions & 0 deletions
5
go/test/endtoend/vtgate/queries/vexplain/unsharded_schema.sql
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,5 @@ | ||
| create table u_user | ||
| ( | ||
| id bigint, | ||
| primary key (id) | ||
| ) Engine = InnoDB; |
6 changes: 6 additions & 0 deletions
6
go/test/endtoend/vtgate/queries/vexplain/unsharded_vschema.json
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,6 @@ | ||
| { | ||
| "sharded": false, | ||
| "tables": { | ||
| "u_user": {} | ||
| } | ||
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.