englefly commented on code in PR #17637:
URL: https://github.com/apache/doris/pull/17637#discussion_r1132266948
##########
fe/fe-core/src/main/java/org/apache/doris/nereids/stats/ExpressionEstimation.java:
##########
@@ -118,13 +164,13 @@ public ColumnStatistic
visitBinaryArithmetic(BinaryArithmetic binaryArithmetic,
double leftNullCount = leftColStats.numNulls;
double rightNullCount = rightColStats.numNulls;
double rowCount = context.getRowCount();
- double numNulls = context.getRowCount()
- * (1 - (1 - (leftNullCount / rowCount) * (1 - rightNullCount /
rowCount)));
+ double numNulls = Math.max(leftNullCount, rightNullCount);
Review Comment:
why change the formula?
##########
fe/fe-core/src/main/java/org/apache/doris/nereids/cost/CostModelV1.java:
##########
@@ -221,12 +221,7 @@ public Cost visitPhysicalHashJoin(
pattern2: (L join1 Agg1) join2 agg2
in pattern2, join1 and join2 takes more time, but Agg1 and agg2 can be
processed in parallel.
*/
- double penalty = HEAVY_OPERATOR_PUNISH_FACTOR
- * Math.min(probeStats.getPenalty(), buildStats.getPenalty());
- if (buildStats.getWidth() >= 2) {
- //penalty for right deep tree
- penalty += rightRowCount;
- }
+ double penalty = HEAVY_OPERATOR_PUNISH_FACTOR;
Review Comment:
penalty is not a constant. Do we need line224-229?
--
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]