-
Notifications
You must be signed in to change notification settings - Fork 884
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
StructBuilder should provide a way to get a &dyn ArrayBuilder of a field builder #7193
Labels
enhancement
Any new improvement worthy of a entry in the changelog
Comments
the80srobot
added a commit
to the80srobot/pedro
that referenced
this issue
Feb 25, 2025
This works around the fact that `append_null` is non-recursive in Rust (even though it is in C++?) by providing a recursive append_null. (See apache/arrow-rs#7192). Unfortunately, providing a recursive append_null requires codegen, because of apache/arrow-rs#7193. Finally, it seems that "item" fields in Lists must always be nullable, because Arrow will occasionally make them so in a copy of the schema it uses for validation. (I don't yet have a minimal repro for this bug, so I haven't filed it yet.)
the80srobot
added a commit
to the80srobot/pedro
that referenced
this issue
Feb 25, 2025
This works around the fact that `append_null` is non-recursive in Rust (even though it is in C++?) by providing a recursive append_null. (See apache/arrow-rs#7192). Unfortunately, providing a recursive append_null requires codegen, because of apache/arrow-rs#7193. Finally, it seems that "item" fields in Lists must always be nullable, because Arrow will occasionally make them so in a copy of the schema it uses for validation. (I don't yet have a minimal repro for this bug, so I haven't filed it yet.)
the80srobot
added a commit
to the80srobot/pedro
that referenced
this issue
Feb 25, 2025
This works around the fact that `append_null` is non-recursive in Rust (even though it is in C++?) by providing a recursive append_null. (See apache/arrow-rs#7192). Unfortunately, providing a recursive append_null requires codegen, because of apache/arrow-rs#7193. Finally, it seems that "item" fields in Lists must always be nullable, because Arrow will occasionally make them so in a copy of the schema it uses for validation. (I don't yet have a minimal repro for this bug, so I haven't filed it yet.)
the80srobot
added a commit
to the80srobot/pedro
that referenced
this issue
Feb 25, 2025
This works around the fact that `append_null` is non-recursive in Rust (even though it is in C++?) by providing a recursive append_null. (See apache/arrow-rs#7192). Unfortunately, providing a recursive append_null requires codegen, because of apache/arrow-rs#7193. Finally, it seems that "item" fields in Lists must always be nullable, because Arrow will occasionally make them so in a copy of the schema it uses for validation. (I don't yet have a minimal repro for this bug, so I haven't filed it yet.)
the80srobot
added a commit
to wowsignal-io/pedro
that referenced
this issue
Feb 26, 2025
This works around the fact that `append_null` is non-recursive in Rust (even though it is in C++?) by providing a recursive append_null. (See apache/arrow-rs#7192). Unfortunately, providing a recursive append_null requires codegen, because of apache/arrow-rs#7193. Finally, it seems that "item" fields in Lists must always be nullable, because Arrow will occasionally make them so in a copy of the schema it uses for validation. (I don't yet have a minimal repro for this bug, so I haven't filed it yet.)
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Is your feature request related to a problem or challenge? Please describe what you are trying to do.
At the moment, there is no way to generically iterate over field builders in a StructBuilder, e.g. to check their
len()
.Describe the solution you'd like
Calling
StructBuilder::field_builder
requires knowing the concrete type of the ArrayBuilder in that column, but that should not be necessary. In fact, returning a reference to theBox
would be sufficient, becauseBox<dyn ArrayBuilder>
already implementsArrayBuilder
.Describe alternatives you've considered
I can think of no alternatives.
The text was updated successfully, but these errors were encountered: