Hello community, As per the below documentation, for an Arrow StructArray, it won’t have any physical buffers backing it if it doesn’t contain any null value:
https://arrow.apache.org/docs/format/Columnar.html#struct-layout However, in PyArrow, it complains if you try to import from C an ArrowArray representing Struct type without a null vector (no nulls), which, according to the Arrow spec above, is permitted. To be more detailed, when doing import from C, it expects the number of buffers to be 1, as coded here: https://fburl.com/s8wfru27 Which seems to suggest it will always expect the validity bitmap. So, I guess there’s some confusing statements in the Arrow StructArray documentation page? Thanks