-
Notifications
You must be signed in to change notification settings - Fork 3.7k
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
colexec: rename vectorize setting 192auto to auto and make it the default #46845
Conversation
…ault This commit renames 192auto back to auto and makes it the default, so that only streaming vectorized operators will be planned by default. The previous auto setting would also plan operators that can spill to disk. This is now removed and they can be run using the "on" setting. Release note (sql change): the vectorized execution engine will only run queries with streaming operators. SET vectorize=on to enable the vectorized execution engine for buffering operators.
This commit will only allow JoinReaders to be part of a colexec flow when vectorize=auto. Release note: None (no observable user change)
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.
Reviewed 30 of 30 files at r1, 20 of 20 files at r2.
Reviewable status:complete! 1 of 0 LGTMs obtained (waiting on @asubiotto and @jordanlewis)
pkg/sql/sessiondata/session_data.go, line 270 at r1 (raw file):
// streaming operators (i.e. those that do not require any buffering) will // be run using the columnar execution. If any part of a query is not // supported by the vectorized execution engine, the whole query will fall
nit: this comment is slightly misleading since we're wrapping index and lookup joins, but I'm not sure whether it's worth calling out. Probably not. Never mind.
bors r=yuzefovich |
Build failed |
The failure seems like a hard to hit float precision issue that we've run into before: https://github.com/cockroachdb/cockroach/pull/37600/files. We should probably take care of that in a separate PR. |
bors r- |
bors r=yuzefovich |
Build succeeded |
This PR will be backported to 20.1. A followup PR will make "on" the default for master. Check the commits for more details.
This PR also disables processor wrapping for all processors when
vectorize=auto
apart from the JoinReader, since this is in line with 19.2 behavior.Release note: None