Uh oh!
There was an error while loading. Please reload this page.
[fix](nereids)AdjustNullable rule should handle union node with no children - #35074
Conversation
doris-robot
commented
May 20, 2024
Thank you for your contribution to Apache Doris. Since 2024-03-18, the Document has been moved to doris-website. |
starocean999
commented
May 20, 2024
run buildall |
starocean999
commented
May 21, 2024
run buildall |
doris-robot
commented
May 21, 2024
TPC-H: Total hot run time: 40353 ms |
doris-robot
commented
May 21, 2024
TPC-DS: Total hot run time: 181671 ms |
doris-robot
commented
May 21, 2024
ClickBench: Total hot run time: 30.64 s |
Uh oh!
There was an error while loading. Please reload this page.
starocean999
commented
May 23, 2024
run buildall |
PR approved by at least one committer and no changes requested. |
PR approved by anyone and no changes requested. |
doris-robot
commented
May 23, 2024
TPC-H: Total hot run time: 40252 ms |
doris-robot
commented
May 23, 2024
TPC-DS: Total hot run time: 169070 ms |
doris-robot
commented
May 23, 2024
ClickBench: Total hot run time: 30.57 s |
| if (setOperation instanceof LogicalUnion) { | ||
| LogicalUnion logicalUnion = (LogicalUnion) setOperation; | ||
| int consExprListSize = logicalUnion.getConstantExprsList().size(); | ||
| if (consExprListSize > 0 && inputNullable == null) { |
There was a problem hiding this comment.
!logicalUnion.getConstantExprsList().isEmpty() && !setOperation.children().isEmpty()
| } | ||
| } | ||
| } | ||
| if (inputNullable == null) { |
There was a problem hiding this comment.
logicalUnion.getConstantExprsList().isEmpty() && setOperation.children().isEmpty()
=> inputNullable == null
starocean999
commented
May 23, 2024
run buildall |
doris-robot
commented
May 23, 2024
TPC-H: Total hot run time: 39882 ms |
doris-robot
commented
May 23, 2024
TPC-DS: Total hot run time: 169486 ms |
doris-robot
commented
May 23, 2024
ClickBench: Total hot run time: 30.72 s |
starocean999
commented
May 24, 2024
run buildall |
doris-robot
commented
May 24, 2024
TPC-H: Total hot run time: 40581 ms |
doris-robot
commented
May 24, 2024
TPC-DS: Total hot run time: 169240 ms |
doris-robot
commented
May 24, 2024
ClickBench: Total hot run time: 30.38 s |
starocean999
commented
May 24, 2024
run buildall |
PR approved by at least one committer and no changes requested. |
doris-robot
commented
May 24, 2024
TPC-H: Total hot run time: 41160 ms |
doris-robot
commented
May 24, 2024
TPC-DS: Total hot run time: 169796 ms |
doris-robot
commented
May 24, 2024
ClickBench: Total hot run time: 29.98 s |
…hildren (#35074) The output slot's nullable info is not correctly calculated in union node. Because old code only get correct result if union node has children. But the union node may have no children but only have constantExprList. So in that case, we should calculate output's nullable info byboth children and constantExprList.
…hildren (#35074) The output slot's nullable info is not correctly calculated in union node. Because old code only get correct result if union node has children. But the union node may have no children but only have constantExprList. So in that case, we should calculate output's nullable info byboth children and constantExprList.
…hildren (apache#35074) The output slot's nullable info is not correctly calculated in union node. Because old code only get correct result if union node has children. But the union node may have no children but only have constantExprList. So in that case, we should calculate output's nullable info byboth children and constantExprList.
…hildren (apache#35074) The output slot's nullable info is not correctly calculated in union node. Because old code only get correct result if union node has children. But the union node may have no children but only have constantExprList. So in that case, we should calculate output's nullable info byboth children and constantExprList.
Proposed changes
The output slot's nullable info is not correctly calculated in union node. Because old code only get correct result if union node has children. But the union node may have no children but only have constantExprList. So in that case, we should calculate output's nullable info by both children and constantExprList.
Further comments
If this is a relatively large or complex change, kick off the discussion at dev@doris.apache.org by explaining why you chose the solution you did and what alternatives you considered, etc...