Github user JamesRTaylor commented on a diff in the pull request:
https://github.com/apache/phoenix/pull/281#discussion_r151015329
--- Diff:
phoenix-core/src/main/java/org/apache/phoenix/execute/ClientAggregatePlan.java
---
@@ -87,6 +89,25 @@ public ClientAggregatePlan(StatementContext context,
FilterableStatement stateme
}
@Override
+ public Cost getCost() throws SQLException {
+ Long byteCount = getEstimatedBytesToScan();
+ if (byteCount == null) {
+ return Cost.ZERO;
+ }
+
+ int parallelLevel = 1;
--- End diff --
So parallelLevel is 1 because aggregation is done client-side instead of
pushed to the cluster, right? Would be good to doc the thinking behind
calculating the cost throughout.
---