This can happen in the wild ( firelab/gdalraster#918 (comment) ) and the current validation is tighter than what Arrow C++ accepts on import (I checked arrow-rs and it also does not mind).
We error if null_count != 0 but it is probably sufficient to check that the null count is not > 0 for all practical purposes. The use case in the issue is that GDAL has been producing arrays like this for several years and there's no real reason we shouldn't accept these arrays.
This can happen in the wild ( firelab/gdalraster#918 (comment) ) and the current validation is tighter than what Arrow C++ accepts on import (I checked arrow-rs and it also does not mind).
We error if null_count != 0 but it is probably sufficient to check that the null count is not > 0 for all practical purposes. The use case in the issue is that GDAL has been producing arrays like this for several years and there's no real reason we shouldn't accept these arrays.