-
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
refactor(flink): port to sqlglot #8268
Conversation
c7f264b
to
879543f
Compare
35c3a8c
to
3ebc25b
Compare
ibis/backends/flink/tests/snapshots/test_compiler/test_window_aggregation/out.sql
Show resolved
Hide resolved
@pytest.mark.xfail( | ||
raises=(Py4JJavaError, AssertionError), | ||
reason="subquery probably uses too much memory/resources, flink complains about network buffers", | ||
strict=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.
This test is pretty flaky.
It passes in CI most of the time but not all, and locally I couldn't get it to pass.
Is there a backend test in ibis/backends/tests
that covers this functionality?
cc @@deepyaman @@chloeh13q
HUZZAHHHHH got at least one passing CI run 🎉 |
Figured out a solution to Flink's broken |
This is ready for review now. Highly recommend using something other than GitHub web UI to review this PR (codespaces work well for this purpose) due to the large number of files and lines changed. |
f6dc380
to
79be99a
Compare
Ok, backend is green, I've worked out all the kinks except for this NPE that's occurring in Additionally, the flink test suite is now running in parallel in CI 🎉 |
43806b8
to
1316a23
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.
LGTM
da3ca05
to
5e000ab
Compare
Merging on green 🚀 |
Disable parallel testing for now due to CI flakiness. |
Thanks @cpcloud! |
This PR ports the Flink backend to use sqlglot.
All the fancy window functionality, which didn't have execution tests (onlyThe hack was successful: I was able to usecompilation tests), is not implemented here. I haven't yet started on adding this functionality to sqlglot, but I think that would be a prerequisite for cutting a 9.0 release. In the meantime I am going to explore whether I can hack that functionality in without creating a mess.
sge.Var
to create the necessary syntax for table-valued window functions.