diff --git a/cpp/src/parquet/size_statistics.cc b/cpp/src/parquet/size_statistics.cc index d6fd351382953..a02cef7aba46f 100644 --- a/cpp/src/parquet/size_statistics.cc +++ b/cpp/src/parquet/size_statistics.cc @@ -67,6 +67,10 @@ void SizeStatistics::Validate(const ColumnDescriptor* descr) const { throw ParquetException("Unencoded byte array data bytes does not support " + TypeToString(descr->physical_type())); } + if (!unencoded_byte_array_data_bytes.has_value() && + descr->physical_type() == Type::BYTE_ARRAY) { + throw ParquetException("Missing unencoded byte array data bytes"); + } } void SizeStatistics::Reset() {