kszucs commented on a change in pull request #7478:
URL: https://github.com/apache/arrow/pull/7478#discussion_r442864422
##########
File path: cpp/src/arrow/compute/kernels/aggregate_basic.cc
##########
@@ -339,13 +366,38 @@ std::unique_ptr<KernelState> MeanInit(KernelContext* ctx,
const KernelInitArgs&
template <typename ArrowType, typename Enable = void>
struct MinMaxState {};
+template <typename ArrowType>
+struct MinMaxState<ArrowType, enable_if_boolean<ArrowType>> {
+ using ThisType = MinMaxState<ArrowType>;
+ using T = typename ArrowType::c_type;
+
+ ThisType& operator+=(const ThisType& rhs) {
+ this->has_nulls |= rhs.has_nulls;
+ this->has_values |= rhs.has_values;
Review comment:
@wesm I had to introduce a flag to check whether any of the arrays have
valid values, otherwise the default inverse extreme values were returned
instead of null.
----------------------------------------------------------------
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.
For queries about this service, please contact Infrastructure at:
[email protected]