andishgar commented on code in PR #46385: URL: https://github.com/apache/arrow/pull/46385#discussion_r2083469161
########## cpp/src/arrow/array/statistics.h: ########## @@ -131,7 +137,9 @@ struct ARROW_EXPORT ArrayStatistics { bool Equals(const ArrayStatistics& other) const { return null_count == other.null_count && distinct_count == other.distinct_count && min == other.min && is_min_exact == other.is_min_exact && max == other.max && - is_max_exact == other.is_max_exact; + is_max_exact == other.is_max_exact && + average_byte_width == other.average_byte_width && Review Comment: I have the following questions regarding the implementation: 1-Should I first create a separate issue to address the `min` and `max` member variables, given that they can be `double` values? 2- I plan to add `arrow::EqualOptions` to the `Equal` method. This would make the` operator==` redundant. Is it acceptable to remove `operator== ` in this case? 3-When comparing two `arrow::Array` objects for equality, should their `arrow::ArrayStatistics` also be checked? 4-Should I implement a separate `ApproximateEqual` method to handle `EqualOptions::atol,` or should this logic be integrated into the `Equal` method? 5-Why isn't `arrow::Scalar `used instead of all the individual types defined in `ArrayStatistics::Value`Type? As mentioned [here](https://github.com/apache/arrow/pull/43273#discussion_r1704278599), if simplification is the goal, arrow::Scalar already supports all necessary types. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: github-unsubscr...@arrow.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org