Both _convert_arrow_fv_to_proto and _convert_arrow_odfv_to_proto convert a pyarrow.Table by indexing table.to_batches()[0]. A valid zero-row Arrow table has no record batches, so either helper raises IndexError instead of returning the natural empty write payload ([]).\n\nThe public write APIs reject empty DataFrames, but these conversion helpers are also used on provider/remote paths and should handle their valid input consistently. Return early for zero-row Tables before accessing the first batch.\n\nA focused regression test covers normal FeatureView and OnDemandFeatureView conversion paths.
Both
_convert_arrow_fv_to_protoand_convert_arrow_odfv_to_protoconvert apyarrow.Tableby indexingtable.to_batches()[0]. A valid zero-row Arrow table has no record batches, so either helper raisesIndexErrorinstead of returning the natural empty write payload ([]).\n\nThe public write APIs reject empty DataFrames, but these conversion helpers are also used on provider/remote paths and should handle their valid input consistently. Return early for zero-row Tables before accessing the first batch.\n\nA focused regression test covers normal FeatureView and OnDemandFeatureView conversion paths.