if (fieldNullCount < 0) { throw new InvalidDataException("Null count length must be >= 0"); // TODO:Localize exception message }
Above from Ipc/ArrowReaderImplementation.cs. pyarrow is fine with -1, probably due to the following. It would be nice if C# were brought up to speed. // When slicing, we do not know the null count of the sliced range without // doing some computation. To avoid doing this eagerly, we set the null count // to -1 (any negative number will do). When Array::null_count is called the // first time, the null count will be computed. See ARROW-33 constexpr int64_t kUnknownNullCount = -1;