-
Notifications
You must be signed in to change notification settings - Fork 413
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: schema evolution not coercing with large arrow types #2305
Conversation
ACTION NEEDED delta-rs follows the Conventional Commits specification for release automation. The PR title and description are used as the merge commit message. Please update your PR title and description to match the specification. |
@aersam wouldn't it maybe be better to have the schema merge function take in delta fields instead of arrow |
Yes! But thats a topic throughout the whole crate, everything is based on arrow schemas instead of delta schemas. |
@aersam can be addressed in a follow up if it's to big of a change now. Btw, forgot to add that in the issue but it is also not working with large lists, and nested versions |
To merge nested correctly, there's no other way than to really do the full thing on our own. So that's what I did now. Since we're still merging arrow schemas, I now do first a conversion to delta and then back to arrow again, which is not optimal, but still does work. |
I'll adjust the tests 🙂 |
Should I move the delta schema merge code to kernel? |
@aersam I believe kernel should only for stuff related to delta protocol implementation, and schema evolution is more on the operation side |
Oh I guess I should merge metadata, too. Will add that |
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.
@aersam Great fix!! 😃
Description
This fixes schema merge for large arrow types in combination with dictionary types. Basically we just allow merging any arrow data type that is the same delta type
Related Issue(s)
Fixes #2298
Documentation