You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Arrow struct writer should respect projected schema width #6576
While working on native Iceberg merge-on-read support #6240 , I found that Comet's Arrow struct writer assumes the Spark struct width matches the Arrow struct width.
Spark columnar structs can expose the full backing StructType even when Comet is writing a narrower projected Arrow struct. StructWriter currently iterates over struct.numFields, which can make it walk past the Arrow children.
This is relevant for MOR paths where Iceberg metadata such as partition structs can retain a wider backing shape across projections or partition-spec evolution.
Steps to reproduce
No response
Expected behavior
Arrow struct writes should be driven by the declared Arrow schema.
A top-level columnar struct can safely ignore compatible trailing fields after validating that the leading fields match the Arrow schema. Direct and nested struct writes should continue to require an exact shape.
The Spark-to-Arrow path should also initialize declared StructVector children when the physical vector has not materialized them yet.
Activity
unikdahal commentedon Oct 3, 2026
take