-
Notifications
You must be signed in to change notification settings - Fork 608
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
fix(sql): avoid excessive inlining during Select
merge
#8825
Conversation
a47abed
to
139e77d
Compare
1aee59b
to
a329506
Compare
a329506
to
c76e730
Compare
@NickCrews If you want to take this for a spin that would be great. After this PR, the number of lines of SQL for 8.0.0 and in this PR are at the same order of magnitude, which IMO is enough of an improvement to merge it. Here's a file with each version's generated SQL from the notebook provided in #8484: (they're |
f60a664
to
0941713
Compare
Select
merge
@cpcloud I added docstrings to the complexity calculation. |
0941713
to
e14a4bb
Compare
e14a4bb
to
5cc3bb0
Compare
Thank you so much for this! I just tested with the notebook in #8484
So this is definitely an improvement. The theory of the implementation sounds right, even if the details go over my head a bit. |
Ideally over time we can get back the 10%, but probably not before the 9.0 release. I think this is the last major blocker for 9.0. |
Select
mergeSelect
merge
Another take on #8820 by introducing a complexity metric and only merge
Select
nodes if the outcome is less complex.