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.
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
Improve sharded query routing for tuple list #14892
Improve sharded query routing for tuple list #14892
Changes from 4 commits
80a1965
127c92c
157d042
825ce76
6854772
b4f7288
File filter
Filter by extension
Conversations
Jump to
There are no files selected for viewing
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Check warning on line 68 in go/vt/vtgate/evalengine/expr_bvar.go
go/vt/vtgate/evalengine/expr_bvar.go#L68
Check warning on line 83 in go/vt/vtgate/evalengine/expr_bvar.go
go/vt/vtgate/evalengine/expr_bvar.go#L83
Check warning on line 46 in go/vt/vtgate/evalengine/expr_tuple_bvar.go
go/vt/vtgate/evalengine/expr_tuple_bvar.go#L45-L46
Check warning on line 49 in go/vt/vtgate/evalengine/expr_tuple_bvar.go
go/vt/vtgate/evalengine/expr_tuple_bvar.go#L49
Check warning on line 56 in go/vt/vtgate/evalengine/expr_tuple_bvar.go
go/vt/vtgate/evalengine/expr_tuple_bvar.go#L52-L56
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I can add that explicitly. Otherwise, It is not required when a
String()
method is implemented.Check warning on line 60 in go/vt/vtgate/evalengine/expr_tuple_bvar.go
go/vt/vtgate/evalengine/expr_tuple_bvar.go#L58-L60
Check warning on line 82 in go/vt/vtgate/evalengine/expr_tuple_bvar.go
go/vt/vtgate/evalengine/expr_tuple_bvar.go#L62-L82
Check warning on line 93 in go/vt/vtgate/evalengine/expr_tuple_bvar.go
go/vt/vtgate/evalengine/expr_tuple_bvar.go#L85-L93
Check warning on line 95 in go/vt/vtgate/evalengine/expr_tuple_bvar.go
go/vt/vtgate/evalengine/expr_tuple_bvar.go#L95
Check warning on line 103 in go/vt/vtgate/evalengine/expr_tuple_bvar.go
go/vt/vtgate/evalengine/expr_tuple_bvar.go#L99-L103
Check warning on line 105 in go/vt/vtgate/evalengine/expr_tuple_bvar.go
go/vt/vtgate/evalengine/expr_tuple_bvar.go#L105
Check warning on line 109 in go/vt/vtgate/evalengine/expr_tuple_bvar.go
go/vt/vtgate/evalengine/expr_tuple_bvar.go#L108-L109
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we add the logic for this here? We need this also for the type resolving as well, since we depend on compile for resolving types now as well. See for example also here:
vitess/go/vt/vtgate/evalengine/translate.go
Lines 697 to 703 in c534201
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a
Tuple
type bind variable and I am not sure how to compile such.I checked
expr_bvar
and it is not recognized thereThere was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We store something like
(1, 'a'), (2, 'b'), (3, 'c')... in a single bind variable.
and TupleBindVariable will provide single tuple for an index.
If Index is
1
then it returns('a'), ('b'), ('c'). The output type is still a tuple.
Check warning on line 156 in go/vt/vtgate/evalengine/format.go
go/vt/vtgate/evalengine/format.go#L155-L156
Check warning on line 160 in go/vt/vtgate/evalengine/format.go
go/vt/vtgate/evalengine/format.go#L159-L160
Check warning on line 164 in go/vt/vtgate/evalengine/format.go
go/vt/vtgate/evalengine/format.go#L163-L164
Check warning on line 30 in go/vt/vtgate/evalengine/translate_simplify.go
go/vt/vtgate/evalengine/translate_simplify.go#L29-L30
Check warning on line 63 in go/vt/vtgate/evalengine/translate_simplify.go
go/vt/vtgate/evalengine/translate_simplify.go#L62-L63
Check warning on line 266 in go/vt/vtgate/planbuilder/operators/route.go
go/vt/vtgate/planbuilder/operators/route.go#L264-L266