Open tustvold opened 9 months ago
@CasperN perhaps you have some thoughts on this?
@tustvold btw, meanwhile based on your findings, I did a "hack" in flatbuffer create_vector/create_vector_from_iter and changed the alignment to 8.
So the codegen in the official Rust backend is generating code that produces wrong data (probably coming from misunderstanding of Rust alignment rules) and none of the maintainers care?
This issue is stale because it has been open 6 months with no activity. Please comment or label not-stale
, or this will be closed in 14 days.
This is still an issue, adding a comment to avoid closure of this problem.
Consider a struct of the form
The following code is generated for
Push
This therefore uses the default impl of
Push::alignment
which isUnfortunately the definition of
FieldNode
isWhich has an alignment of 1.
The net result is that the writer does not provide the correct alignment guarantees for structs, which causes the verifiers of some implementations to fail - https://github.com/apache/arrow-rs/issues/5052.