-
Notifications
You must be signed in to change notification settings - Fork 13
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
feat: update to Substrait 0.43, add min. precision timestamp support #124
base: main
Are you sure you want to change the base?
feat: update to Substrait 0.43, add min. precision timestamp support #124
Conversation
Update to Substrait v0.43.0, which is the next version, and add minimal support for precision timestamp support, which is the main change since the previously used v0.42.1. The minimal support is achieved by adding the new type cases to the type switches, where they either produce "not implemented" errors or do the simple functionality of setting nullability of the type, as well as suppressing warnings of using depcreated protobuf accessors in the places where these were not suppressed yet. Signed-off-by: Ingo Müller <ingomueller@google.com>
I have a couple of subsequent changes that bring this repo up to date with the current version of the main repo and will push them in a bit. |
I just realized that the minimal changes are not enough and that the full type implementation is required. I have no intention in doing that. I have started here, tough, so if someone wants to pick it up, feel free... |
The remaining changes related to renaming the join types, which is trivial, and introducing another type, which I also have no intention implementing at the moment, so I'll abandon those changes. |
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 for the fix! Adding support for the new join types are on my list.
Thanks, @EpsilonPrime, for approving! Note, though, that there is quite some work left, which I had underestimated when I started. The problem is that the precision timestamps appear in some function signatures, which are loaded as part of the function tests, which means that these types actually need to be implemented. |
One way around that, which may be a good idea anyways, could be to (optionally?) allow loading the function library partially, i.e., to ignore unsupported functions. |
Update to Substrait v0.43.0, which is the next version, and add minimal support for precision timestamp support, which is the main change since the previously used v0.42.1. The minimal support is achieved by adding the new type cases to the type switches, where they either produce "not implemented" errors or do the simple functionality of setting nullability of the type, as well as suppressing warnings of using depcreated protobuf accessors in the places where these were not suppressed yet.