github-actions[bot] commented on code in PR #67169:
URL: https://github.com/apache/doris/pull/67169#discussion_r3863429914
##########
be/src/exprs/aggregate/aggregate_function_null_v2.h:
##########
@@ -482,7 +482,7 @@ class AggregateFunctionNullUnaryInlineV2 final
Arena& arena) const override {
const auto* column =
assert_cast<const ColumnNullable*,
TypeCheckOnRelease::DISABLE>(columns[0]);
- bool has_null = column->has_null();
+ bool has_null = column->has_null(0, batch_size);
Review Comment:
[P2] Tie this optimization to a production batch path
Every current production caller supplies the entire argument column here:
`AggFnEvaluator::execute_single_add` materializes arguments and passes
`block->rows()`, while DISTINCT and sort pass the first argument column's own
size. Thus `[0, batch_size)` is still `[0, column->size())` and performs the
same scan as the old `has_null()` on current workloads. The five-row/three-row
unit case validly exercises the interface contract, but it does not establish
the claimed production scan reduction. Please either route a real partial-batch
path through this method and test it, or narrow the batch-side performance
claim.
--
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: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]