diff --git a/be/src/pipeline/exec/analytic_sink_operator.h b/be/src/pipeline/exec/analytic_sink_operator.h index 0269ba15be..8fb3645daa 100644 --- a/be/src/pipeline/exec/analytic_sink_operator.h +++ b/be/src/pipeline/exec/analytic_sink_operator.h @@ -101,17 +101,16 @@ public: DataDistribution required_data_distribution() const override { if (_partition_by_eq_expr_ctxs.empty()) { return {ExchangeType::PASSTHROUGH}; - } else if (_order_by_eq_expr_ctxs.empty()) { + } else { return _is_colocate && _require_bucket_distribution && !_followed_by_shuffled_operator ? DataDistribution(ExchangeType::BUCKET_HASH_SHUFFLE, _partition_exprs) : DataDistribution(ExchangeType::HASH_SHUFFLE, _partition_exprs); } - return DataSinkOperatorX::required_data_distribution(); } bool require_data_distribution() const override { return true; } bool require_shuffled_data_distribution() const override { - return !_partition_by_eq_expr_ctxs.empty() && _order_by_eq_expr_ctxs.empty(); + return !_partition_by_eq_expr_ctxs.empty(); } private: