Skip to content
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

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

ingomueller-net
Copy link
Contributor

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.

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>
@ingomueller-net
Copy link
Contributor Author

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.

@ingomueller-net
Copy link
Contributor Author

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...

@ingomueller-net
Copy link
Contributor Author

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.

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.

Copy link
Member

@EpsilonPrime EpsilonPrime left a 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.

@ingomueller-net
Copy link
Contributor Author

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.

@ingomueller-net
Copy link
Contributor Author

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants