MCPcopy Create free account
hub / github.com/apache/arrow / VerifyParquetStats

Method VerifyParquetStats

cpp/src/parquet/statistics_test.cc:989–1009  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

987 }
988
989 void VerifyParquetStats() {
990 ASSERT_OK_AND_ASSIGN(auto pbuffer, parquet_sink_->Finish());
991
992 // Create a ParquetReader instance
993 std::unique_ptr<parquet::ParquetFileReader> parquet_reader =
994 parquet::ParquetFileReader::Open(
995 std::make_shared<::arrow::io::BufferReader>(pbuffer));
996
997 // Get the File MetaData
998 std::shared_ptr<parquet::FileMetaData> file_metadata = parquet_reader->metadata();
999 std::shared_ptr<parquet::RowGroupMetaData> rg_metadata = file_metadata->RowGroup(0);
1000 for (int i = 0; i < static_cast<int>(fields_.size()); i++) {
1001 ARROW_SCOPED_TRACE("Statistics for field #", i);
1002 std::shared_ptr<parquet::ColumnChunkMetaData> cc_metadata =
1003 rg_metadata->ColumnChunk(i);
1004 EXPECT_EQ(stats_[i].min(), cc_metadata->statistics()->EncodeMin());
1005 EXPECT_EQ(stats_[i].max(), cc_metadata->statistics()->EncodeMax());
1006 EXPECT_EQ(stats_[i].is_max_value_exact, std::make_optional(true));
1007 EXPECT_EQ(stats_[i].is_min_value_exact, std::make_optional(true));
1008 }
1009 }
1010
1011 protected:
1012 std::vector<c_type> values_;

Callers 1

TYPED_TESTFunction · 0.80

Calls 9

EncodeMinMethod · 0.80
EncodeMaxMethod · 0.80
metadataMethod · 0.45
RowGroupMethod · 0.45
sizeMethod · 0.45
ColumnChunkMethod · 0.45
minMethod · 0.45
statisticsMethod · 0.45
maxMethod · 0.45

Tested by

no test coverage detected