diff --git a/cpp/src/parquet/file_serialize_test.cc b/cpp/src/parquet/file_serialize_test.cc index fc356d5d24c..f287e493a90 100644 --- a/cpp/src/parquet/file_serialize_test.cc +++ b/cpp/src/parquet/file_serialize_test.cc @@ -76,6 +76,7 @@ class TestSerialize : public PrimitiveTypedTest { for (int rg = 0; rg < num_rowgroups_ / 2; ++rg) { RowGroupWriter* row_group_writer; row_group_writer = file_writer->AppendRowGroup(); + EXPECT_EQ(rows_per_rowgroup_ * rg, file_writer->num_rows()); for (int col = 0; col < num_columns_; ++col) { auto column_writer = static_cast*>(row_group_writer->NextColumn()); @@ -97,6 +98,7 @@ class TestSerialize : public PrimitiveTypedTest { for (int rg = 0; rg < num_rowgroups_ / 2; ++rg) { RowGroupWriter* row_group_writer; row_group_writer = file_writer->AppendBufferedRowGroup(); + EXPECT_EQ(rows_per_rowgroup_ * (rg + num_rowgroups_ / 2), file_writer->num_rows()); for (int batch = 0; batch < (rows_per_rowgroup_ / rows_per_batch_); ++batch) { for (int col = 0; col < num_columns_; ++col) { auto column_writer = diff --git a/cpp/src/parquet/file_writer.cc b/cpp/src/parquet/file_writer.cc index 8c19aecb0df..ddec2c0a560 100644 --- a/cpp/src/parquet/file_writer.cc +++ b/cpp/src/parquet/file_writer.cc @@ -358,6 +358,7 @@ class FileSerializer : public ParquetFileWriter::Contents { RowGroupWriter* AppendRowGroup(bool buffered_row_group) { if (row_group_writer_) { + num_rows_ += row_group_writer_->num_rows(); row_group_writer_->Close(); } int16_t row_group_ordinal = -1; // row group ordinal not set