-
Notifications
You must be signed in to change notification settings - Fork 5.4k
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
Disable PushdownSubfields rule #13082
Disable PushdownSubfields rule #13082
Conversation
booleanProperty( | ||
PUSHDOWN_SUBFIELDS_ENABLED, | ||
"Experimental: enable subfield pruning", | ||
false, |
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.
nit: It might be worth adding a configuration property as well for completeness.
28bbe11
to
7218240
Compare
@arhimondr Andrii, thank you for review. Added configuration property and updated the PR. |
Turns out PushdownSubfields doesn't interoperate with CBO yet. PushdownSubfields changes ColumnHandles, but TableScanStatsRule uses them to look up statistics in a map keyed by unmodified ColumnHandles. Introduced pushdown_subfields_enabled session property and experimental.pushdown-subfields-enabled configuration property with default value 'false' to control whether PushdownSubfields rule runs or not.
7218240
to
82d79df
Compare
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.
Thanks @mbasmanova
@mbasmanova do u have example sql that would face issue in presto 0.220 before this PR fix? |
@tooptoop4 I don't have an example, but I can explain when would this happen.
In this case, PushdownSubfields rule collects a list of subfields used in a query and generates new A proper fix, would be to make stats estimation smarter by taking
|
Turns out PushdownSubfields doesn't interoperate with CBO yet. PushdownSubfields
changes ColumnHandles, but TableScanStatsRule uses them to look up statistics in
a map keyed by unmodified ColumnHandles.
Introduced pushdown_subfields_enabled session property with default value 'false'
to control whether PushdownSubfields rule runs or not.