This is an automated email from the ASF dual-hosted git repository.
alamb pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/datafusion.git
The following commit(s) were added to refs/heads/main by this push:
new 648c20c388 Minor: Improve arrow_statistics tests (#10927)
648c20c388 is described below
commit 648c20c388427fa82d219dc9829db6c1c9b119a0
Author: Andrew Lamb <[email protected]>
AuthorDate: Sun Jun 16 07:37:40 2024 -0400
Minor: Improve arrow_statistics tests (#10927)
---
datafusion/core/tests/parquet/arrow_statistics.rs | 213 ++++++++++++----------
1 file changed, 121 insertions(+), 92 deletions(-)
diff --git a/datafusion/core/tests/parquet/arrow_statistics.rs
b/datafusion/core/tests/parquet/arrow_statistics.rs
index 3c812800e2..6b8705441d 100644
--- a/datafusion/core/tests/parquet/arrow_statistics.rs
+++ b/datafusion/core/tests/parquet/arrow_statistics.rs
@@ -164,6 +164,36 @@ impl TestReader {
}
}
+/// Which statistics should we check?
+#[derive(Clone, Debug, Copy)]
+enum Check {
+ /// Extract and check row group statistics
+ RowGroup,
+ /// Extract and check data page statistics
+ DataPage,
+ /// Extract and check both row group and data page statistics.
+ ///
+ /// Note if a row group contains a single data page,
+ /// the statistics for row groups and data pages are the same.
+ Both,
+}
+
+impl Check {
+ fn row_group(&self) -> bool {
+ match self {
+ Self::RowGroup | Self::Both => true,
+ Self::DataPage => false,
+ }
+ }
+
+ fn data_page(&self) -> bool {
+ match self {
+ Self::DataPage | Self::Both => true,
+ Self::RowGroup => false,
+ }
+ }
+}
+
/// Defines a test case for statistics extraction
struct Test<'a> {
/// The parquet file reader
@@ -174,9 +204,8 @@ struct Test<'a> {
expected_row_counts: UInt64Array,
/// Which column to extract statistics from
column_name: &'static str,
- /// If true, extracts and compares data page statistics rather than row
- /// group statistics
- test_data_page_statistics: bool,
+ /// What statistics should be checked?
+ check: Check,
}
impl<'a> Test<'a> {
@@ -188,7 +217,7 @@ impl<'a> Test<'a> {
expected_null_counts,
expected_row_counts,
column_name,
- test_data_page_statistics,
+ check,
} = self;
let converter = StatisticsConverter::try_new(
@@ -199,8 +228,9 @@ impl<'a> Test<'a> {
.unwrap();
let row_groups = reader.metadata().row_groups();
+ let expected_null_counts = Arc::new(expected_null_counts) as ArrayRef;
- if test_data_page_statistics {
+ if check.data_page() {
let column_page_index = reader
.metadata()
.column_index()
@@ -249,7 +279,6 @@ impl<'a> Test<'a> {
)
.unwrap();
- let expected_null_counts = Arc::new(expected_null_counts) as
ArrayRef;
assert_eq!(
&null_counts, &expected_null_counts,
"{column_name}: Mismatch with expected data page null counts. \
@@ -259,13 +288,16 @@ impl<'a> Test<'a> {
let row_counts = converter
.data_page_row_counts(column_offset_index, row_groups,
&row_group_indices)
.unwrap();
- let expected_row_counts = Arc::new(expected_row_counts) as
ArrayRef;
+ // https://github.com/apache/datafusion/issues/10926
+ let expected_row_counts: ArrayRef =
Arc::new(expected_row_counts.clone());
assert_eq!(
&row_counts, &expected_row_counts,
"{column_name}: Mismatch with expected row counts. \
Actual: {row_counts:?}. Expected: {expected_row_counts:?}"
);
- } else {
+ }
+
+ if check.row_group() {
let min = converter.row_group_mins(row_groups).unwrap();
assert_eq!(
&min, &expected_min,
@@ -279,7 +311,6 @@ impl<'a> Test<'a> {
);
let null_counts =
converter.row_group_null_counts(row_groups).unwrap();
- let expected_null_counts = Arc::new(expected_null_counts) as
ArrayRef;
assert_eq!(
&null_counts, &expected_null_counts,
"{column_name}: Mismatch with expected null counts. \
@@ -348,7 +379,7 @@ async fn test_one_row_group_without_null() {
// 3 rows
expected_row_counts: UInt64Array::from(vec![3]),
column_name: "i64",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run()
}
@@ -375,7 +406,7 @@ async fn test_one_row_group_with_null_and_negative() {
// 8 rows
expected_row_counts: UInt64Array::from(vec![8]),
column_name: "i64",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run()
}
@@ -402,7 +433,7 @@ async fn test_two_row_group_with_null() {
// row counts are [10, 5]
expected_row_counts: UInt64Array::from(vec![10, 5]),
column_name: "i64",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run()
}
@@ -429,7 +460,7 @@ async fn test_two_row_groups_with_all_nulls_in_one() {
// row counts are [5, 3]
expected_row_counts: UInt64Array::from(vec![5, 3]),
column_name: "i64",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run()
}
@@ -460,7 +491,7 @@ async fn test_multiple_data_pages_nulls_and_negatives() {
expected_null_counts: UInt64Array::from(vec![0, 0, 1, 2]),
expected_row_counts: UInt64Array::from(vec![4, 4, 4, 2]),
column_name: "i64",
- test_data_page_statistics: true,
+ check: Check::DataPage,
}
.run()
}
@@ -482,22 +513,20 @@ async fn test_int_64() {
.await;
// since each row has only one data page, the statistics are the same
- for test_data_page_statistics in [true, false] {
- Test {
- reader: &reader,
- // mins are [-5, -4, 0, 5]
- expected_min: Arc::new(Int64Array::from(vec![-5, -4, 0, 5])),
- // maxes are [-1, 0, 4, 9]
- expected_max: Arc::new(Int64Array::from(vec![-1, 0, 4, 9])),
- // nulls are [0, 0, 0, 0]
- expected_null_counts: UInt64Array::from(vec![0, 0, 0, 0]),
- // row counts are [5, 5, 5, 5]
- expected_row_counts: UInt64Array::from(vec![5, 5, 5, 5]),
- column_name: "i64",
- test_data_page_statistics,
- }
- .run();
+ Test {
+ reader: &reader,
+ // mins are [-5, -4, 0, 5]
+ expected_min: Arc::new(Int64Array::from(vec![-5, -4, 0, 5])),
+ // maxes are [-1, 0, 4, 9]
+ expected_max: Arc::new(Int64Array::from(vec![-1, 0, 4, 9])),
+ // nulls are [0, 0, 0, 0]
+ expected_null_counts: UInt64Array::from(vec![0, 0, 0, 0]),
+ // row counts are [5, 5, 5, 5]
+ expected_row_counts: UInt64Array::from(vec![5, 5, 5, 5]),
+ column_name: "i64",
+ check: Check::Both,
}
+ .run();
}
#[tokio::test]
@@ -521,7 +550,7 @@ async fn test_int_32() {
// row counts are [5, 5, 5, 5]
expected_row_counts: UInt64Array::from(vec![5, 5, 5, 5]),
column_name: "i32",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
}
@@ -562,7 +591,7 @@ async fn test_int_16() {
// row counts are [5, 5, 5, 5]
expected_row_counts: UInt64Array::from(vec![5, 5, 5, 5]),
column_name: "i16",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
}
@@ -591,7 +620,7 @@ async fn test_int_8() {
// row counts are [5, 5, 5, 5]
expected_row_counts: UInt64Array::from(vec![5, 5, 5, 5]),
column_name: "i8",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
}
@@ -641,7 +670,7 @@ async fn test_timestamp() {
// row counts are [5, 5, 5, 5]
expected_row_counts: UInt64Array::from(vec![5, 5, 5, 5]),
column_name: "nanos",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
@@ -670,7 +699,7 @@ async fn test_timestamp() {
// row counts are [5, 5, 5, 5]
expected_row_counts: UInt64Array::from(vec![5, 5, 5, 5]),
column_name: "nanos_timezoned",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
@@ -692,7 +721,7 @@ async fn test_timestamp() {
expected_null_counts: UInt64Array::from(vec![1, 1, 1, 1]),
expected_row_counts: UInt64Array::from(vec![5, 5, 5, 5]),
column_name: "micros",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
@@ -721,7 +750,7 @@ async fn test_timestamp() {
// row counts are [5, 5, 5, 5]
expected_row_counts: UInt64Array::from(vec![5, 5, 5, 5]),
column_name: "micros_timezoned",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
@@ -743,7 +772,7 @@ async fn test_timestamp() {
expected_null_counts: UInt64Array::from(vec![1, 1, 1, 1]),
expected_row_counts: UInt64Array::from(vec![5, 5, 5, 5]),
column_name: "millis",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
@@ -772,7 +801,7 @@ async fn test_timestamp() {
// row counts are [5, 5, 5, 5]
expected_row_counts: UInt64Array::from(vec![5, 5, 5, 5]),
column_name: "millis_timezoned",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
@@ -794,7 +823,7 @@ async fn test_timestamp() {
expected_null_counts: UInt64Array::from(vec![1, 1, 1, 1]),
expected_row_counts: UInt64Array::from(vec![5, 5, 5, 5]),
column_name: "seconds",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
@@ -823,7 +852,7 @@ async fn test_timestamp() {
// row counts are [5, 5, 5, 5]
expected_row_counts: UInt64Array::from(vec![5, 5, 5, 5]),
column_name: "seconds_timezoned",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
}
@@ -869,7 +898,7 @@ async fn test_timestamp_diff_rg_sizes() {
// row counts are [8, 8, 4]
expected_row_counts: UInt64Array::from(vec![8, 8, 4]),
column_name: "nanos",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
@@ -896,7 +925,7 @@ async fn test_timestamp_diff_rg_sizes() {
// row counts are [8, 8, 4]
expected_row_counts: UInt64Array::from(vec![8, 8, 4]),
column_name: "nanos_timezoned",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
@@ -916,7 +945,7 @@ async fn test_timestamp_diff_rg_sizes() {
expected_null_counts: UInt64Array::from(vec![1, 2, 1]),
expected_row_counts: UInt64Array::from(vec![8, 8, 4]),
column_name: "micros",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
@@ -943,7 +972,7 @@ async fn test_timestamp_diff_rg_sizes() {
// row counts are [8, 8, 4]
expected_row_counts: UInt64Array::from(vec![8, 8, 4]),
column_name: "micros_timezoned",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
@@ -963,7 +992,7 @@ async fn test_timestamp_diff_rg_sizes() {
expected_null_counts: UInt64Array::from(vec![1, 2, 1]),
expected_row_counts: UInt64Array::from(vec![8, 8, 4]),
column_name: "millis",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
@@ -990,7 +1019,7 @@ async fn test_timestamp_diff_rg_sizes() {
// row counts are [8, 8, 4]
expected_row_counts: UInt64Array::from(vec![8, 8, 4]),
column_name: "millis_timezoned",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
@@ -1010,7 +1039,7 @@ async fn test_timestamp_diff_rg_sizes() {
expected_null_counts: UInt64Array::from(vec![1, 2, 1]),
expected_row_counts: UInt64Array::from(vec![8, 8, 4]),
column_name: "seconds",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
@@ -1037,7 +1066,7 @@ async fn test_timestamp_diff_rg_sizes() {
// row counts are [8, 8, 4]
expected_row_counts: UInt64Array::from(vec![8, 8, 4]),
column_name: "seconds_timezoned",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
}
@@ -1075,7 +1104,7 @@ async fn test_dates_32_diff_rg_sizes() {
// row counts are [13, 7]
expected_row_counts: UInt64Array::from(vec![13, 7]),
column_name: "date32",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
}
@@ -1098,7 +1127,7 @@ async fn test_time32_second_diff_rg_sizes() {
expected_null_counts: UInt64Array::from(vec![0, 0, 0, 0]), // Assuming
1 null per row group for simplicity
expected_row_counts: UInt64Array::from(vec![4, 4, 4, 4]),
column_name: "second",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
}
@@ -1125,7 +1154,7 @@ async fn test_time32_millisecond_diff_rg_sizes() {
expected_null_counts: UInt64Array::from(vec![0, 0, 0, 0]), // Assuming
1 null per row group for simplicity
expected_row_counts: UInt64Array::from(vec![4, 4, 4, 4]),
column_name: "millisecond",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
}
@@ -1158,7 +1187,7 @@ async fn test_time64_microsecond_diff_rg_sizes() {
expected_null_counts: UInt64Array::from(vec![0, 0, 0, 0]), // Assuming
1 null per row group for simplicity
expected_row_counts: UInt64Array::from(vec![4, 4, 4, 4]),
column_name: "microsecond",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
}
@@ -1191,7 +1220,7 @@ async fn test_time64_nanosecond_diff_rg_sizes() {
expected_null_counts: UInt64Array::from(vec![0, 0, 0, 0]), // Assuming
1 null per row group for simplicity
expected_row_counts: UInt64Array::from(vec![4, 4, 4, 4]),
column_name: "nanosecond",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
}
@@ -1218,7 +1247,7 @@ async fn test_dates_64_diff_rg_sizes() {
expected_null_counts: UInt64Array::from(vec![2, 2]),
expected_row_counts: UInt64Array::from(vec![13, 7]),
column_name: "date64",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
}
@@ -1246,7 +1275,7 @@ async fn test_uint() {
expected_null_counts: UInt64Array::from(vec![0, 0, 0, 0, 0]),
expected_row_counts: UInt64Array::from(vec![4, 4, 4, 4, 4]),
column_name: "u8",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
@@ -1257,7 +1286,7 @@ async fn test_uint() {
expected_null_counts: UInt64Array::from(vec![0, 0, 0, 0, 0]),
expected_row_counts: UInt64Array::from(vec![4, 4, 4, 4, 4]),
column_name: "u16",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
@@ -1268,7 +1297,7 @@ async fn test_uint() {
expected_null_counts: UInt64Array::from(vec![0, 0, 0, 0, 0]),
expected_row_counts: UInt64Array::from(vec![4, 4, 4, 4, 4]),
column_name: "u32",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
@@ -1279,7 +1308,7 @@ async fn test_uint() {
expected_null_counts: UInt64Array::from(vec![0, 0, 0, 0, 0]),
expected_row_counts: UInt64Array::from(vec![4, 4, 4, 4, 4]),
column_name: "u64",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
}
@@ -1302,7 +1331,7 @@ async fn test_int32_range() {
expected_null_counts: UInt64Array::from(vec![0]),
expected_row_counts: UInt64Array::from(vec![4]),
column_name: "i",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
}
@@ -1325,7 +1354,7 @@ async fn test_uint32_range() {
expected_null_counts: UInt64Array::from(vec![0]),
expected_row_counts: UInt64Array::from(vec![4]),
column_name: "u",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
}
@@ -1347,7 +1376,7 @@ async fn test_numeric_limits_unsigned() {
expected_null_counts: UInt64Array::from(vec![0, 0]),
expected_row_counts: UInt64Array::from(vec![5, 2]),
column_name: "u8",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
@@ -1358,7 +1387,7 @@ async fn test_numeric_limits_unsigned() {
expected_null_counts: UInt64Array::from(vec![0, 0]),
expected_row_counts: UInt64Array::from(vec![5, 2]),
column_name: "u16",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
@@ -1369,7 +1398,7 @@ async fn test_numeric_limits_unsigned() {
expected_null_counts: UInt64Array::from(vec![0, 0]),
expected_row_counts: UInt64Array::from(vec![5, 2]),
column_name: "u32",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
@@ -1380,7 +1409,7 @@ async fn test_numeric_limits_unsigned() {
expected_null_counts: UInt64Array::from(vec![0, 0]),
expected_row_counts: UInt64Array::from(vec![5, 2]),
column_name: "u64",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
}
@@ -1402,7 +1431,7 @@ async fn test_numeric_limits_signed() {
expected_null_counts: UInt64Array::from(vec![0, 0]),
expected_row_counts: UInt64Array::from(vec![5, 2]),
column_name: "i8",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
@@ -1413,7 +1442,7 @@ async fn test_numeric_limits_signed() {
expected_null_counts: UInt64Array::from(vec![0, 0]),
expected_row_counts: UInt64Array::from(vec![5, 2]),
column_name: "i16",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
@@ -1424,7 +1453,7 @@ async fn test_numeric_limits_signed() {
expected_null_counts: UInt64Array::from(vec![0, 0]),
expected_row_counts: UInt64Array::from(vec![5, 2]),
column_name: "i32",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
@@ -1435,7 +1464,7 @@ async fn test_numeric_limits_signed() {
expected_null_counts: UInt64Array::from(vec![0, 0]),
expected_row_counts: UInt64Array::from(vec![5, 2]),
column_name: "i64",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
}
@@ -1457,7 +1486,7 @@ async fn test_numeric_limits_float() {
expected_null_counts: UInt64Array::from(vec![0, 0]),
expected_row_counts: UInt64Array::from(vec![5, 2]),
column_name: "f32",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
@@ -1468,7 +1497,7 @@ async fn test_numeric_limits_float() {
expected_null_counts: UInt64Array::from(vec![0, 0]),
expected_row_counts: UInt64Array::from(vec![5, 2]),
column_name: "f64",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
@@ -1479,7 +1508,7 @@ async fn test_numeric_limits_float() {
expected_null_counts: UInt64Array::from(vec![0, 0]),
expected_row_counts: UInt64Array::from(vec![5, 2]),
column_name: "f32_nan",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
@@ -1490,7 +1519,7 @@ async fn test_numeric_limits_float() {
expected_null_counts: UInt64Array::from(vec![0, 0]),
expected_row_counts: UInt64Array::from(vec![5, 2]),
column_name: "f64_nan",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
}
@@ -1513,7 +1542,7 @@ async fn test_float64() {
expected_null_counts: UInt64Array::from(vec![0, 0, 0, 0]),
expected_row_counts: UInt64Array::from(vec![5, 5, 5, 5]),
column_name: "f",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
}
@@ -1546,7 +1575,7 @@ async fn test_float16() {
expected_null_counts: UInt64Array::from(vec![0, 0, 0, 0]),
expected_row_counts: UInt64Array::from(vec![5, 5, 5, 5]),
column_name: "f",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
}
@@ -1577,7 +1606,7 @@ async fn test_decimal() {
expected_null_counts: UInt64Array::from(vec![0, 0, 0]),
expected_row_counts: UInt64Array::from(vec![5, 5, 5]),
column_name: "decimal_col",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
}
@@ -1615,7 +1644,7 @@ async fn test_decimal_256() {
expected_null_counts: UInt64Array::from(vec![0, 0, 0]),
expected_row_counts: UInt64Array::from(vec![5, 5, 5]),
column_name: "decimal256_col",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
}
@@ -1635,7 +1664,7 @@ async fn test_dictionary() {
expected_null_counts: UInt64Array::from(vec![1, 0]),
expected_row_counts: UInt64Array::from(vec![5, 2]),
column_name: "string_dict_i8",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
@@ -1646,7 +1675,7 @@ async fn test_dictionary() {
expected_null_counts: UInt64Array::from(vec![1, 0]),
expected_row_counts: UInt64Array::from(vec![5, 2]),
column_name: "string_dict_i32",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
@@ -1657,7 +1686,7 @@ async fn test_dictionary() {
expected_null_counts: UInt64Array::from(vec![1, 0]),
expected_row_counts: UInt64Array::from(vec![5, 2]),
column_name: "int_dict_i8",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
}
@@ -1695,7 +1724,7 @@ async fn test_byte() {
expected_null_counts: UInt64Array::from(vec![0, 0, 0]),
expected_row_counts: UInt64Array::from(vec![5, 5, 5]),
column_name: "name",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
@@ -1715,7 +1744,7 @@ async fn test_byte() {
expected_null_counts: UInt64Array::from(vec![0, 0, 0]),
expected_row_counts: UInt64Array::from(vec![5, 5, 5]),
column_name: "service_string",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
@@ -1734,7 +1763,7 @@ async fn test_byte() {
expected_null_counts: UInt64Array::from(vec![0, 0, 0]),
expected_row_counts: UInt64Array::from(vec![5, 5, 5]),
column_name: "service_binary",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
@@ -1755,7 +1784,7 @@ async fn test_byte() {
expected_null_counts: UInt64Array::from(vec![0, 0, 0]),
expected_row_counts: UInt64Array::from(vec![5, 5, 5]),
column_name: "service_fixedsize",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
@@ -1776,7 +1805,7 @@ async fn test_byte() {
expected_null_counts: UInt64Array::from(vec![0, 0, 0]),
expected_row_counts: UInt64Array::from(vec![5, 5, 5]),
column_name: "service_large_binary",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
}
@@ -1809,7 +1838,7 @@ async fn test_period_in_column_names() {
expected_null_counts: UInt64Array::from(vec![0, 0, 0]),
expected_row_counts: UInt64Array::from(vec![5, 5, 5]),
column_name: "name",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
@@ -1823,7 +1852,7 @@ async fn test_period_in_column_names() {
expected_null_counts: UInt64Array::from(vec![0, 0, 0]),
expected_row_counts: UInt64Array::from(vec![5, 5, 5]),
column_name: "service.name",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
}
@@ -1847,7 +1876,7 @@ async fn test_boolean() {
expected_null_counts: UInt64Array::from(vec![1, 0]),
expected_row_counts: UInt64Array::from(vec![5, 5]),
column_name: "bool",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
}
@@ -1874,7 +1903,7 @@ async fn test_struct() {
expected_null_counts: UInt64Array::from(vec![0]),
expected_row_counts: UInt64Array::from(vec![3]),
column_name: "struct",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
}
@@ -1897,7 +1926,7 @@ async fn test_utf8() {
expected_null_counts: UInt64Array::from(vec![1, 0]),
expected_row_counts: UInt64Array::from(vec![5, 5]),
column_name: "utf8",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
@@ -1909,7 +1938,7 @@ async fn test_utf8() {
expected_null_counts: UInt64Array::from(vec![1, 0]),
expected_row_counts: UInt64Array::from(vec![5, 5]),
column_name: "large_utf8",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
}
@@ -1935,7 +1964,7 @@ async fn test_missing_statistics() {
expected_null_counts: UInt64Array::from(vec![None]),
expected_row_counts: UInt64Array::from(vec![3]), // stil has row count
statistics
column_name: "i64",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run();
}
@@ -1957,7 +1986,7 @@ async fn test_column_not_found() {
expected_null_counts: UInt64Array::from(vec![2, 2]),
expected_row_counts: UInt64Array::from(vec![13, 7]),
column_name: "not_a_column",
- test_data_page_statistics: false,
+ check: Check::RowGroup,
}
.run_col_not_found();
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]