fix shared expr canonicalize bug and const propagate bug
This commit is contained in:
@ -420,7 +420,6 @@ int ObRawExprCanonicalizerImpl::pull_parallel_expr(ObRawExpr *&expr)
|
||||
LOG_WARN("Pull AND or OR expression failed", K(ret));
|
||||
}
|
||||
}
|
||||
child_expr->reset();
|
||||
}
|
||||
} else {
|
||||
if (OB_FAIL(parent_expr->add_param_expr(sub_expr))) {
|
||||
|
||||
@ -338,7 +338,8 @@ int ObTransformConstPropagate::do_transform(ObDMLStmt *stmt,
|
||||
}
|
||||
}
|
||||
|
||||
if (OB_SUCC(ret) && has_rollup_or_groupingsets) {
|
||||
if (OB_SUCC(ret) && stmt->is_select_stmt() &&
|
||||
(has_rollup_or_groupingsets || static_cast<ObSelectStmt*>(stmt)->is_scala_group_by())) {
|
||||
if (OB_FAIL(const_ctx.expire_const_infos())) {
|
||||
LOG_WARN("failed to expire const infos ", K(ret));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user