[FEAT MERGE] support auto dop

This commit is contained in:
obdev
2023-04-28 15:11:52 +00:00
committed by ob-robot
parent 642f1c7d84
commit b41dc0ebdd
106 changed files with 3815 additions and 2844 deletions

View File

@ -130,7 +130,7 @@ int ObLogUpdate::est_cost()
return ret;
}
int ObLogUpdate::re_est_cost(EstimateCostInfo &param, double &card, double &cost)
int ObLogUpdate::do_re_est_cost(EstimateCostInfo &param, double &card, double &op_cost, double &cost)
{
int ret = OB_SUCCESS;
ObLogicalOperator *child = NULL;
@ -140,7 +140,6 @@ int ObLogUpdate::re_est_cost(EstimateCostInfo &param, double &card, double &cost
} else {
double child_card = child->get_card();
double child_cost = child->get_cost();
double op_cost = 0.0;
if (OB_FAIL(SMART_CALL(child->re_est_cost(param, child_card, child_cost)))) {
LOG_WARN("failed to re est exchange cost", K(ret));
} else if (OB_FAIL(inner_est_cost(child_card, op_cost))) {
@ -148,11 +147,6 @@ int ObLogUpdate::re_est_cost(EstimateCostInfo &param, double &card, double &cost
} else {
cost = child_cost + op_cost;
card = child_card;
if (param.override_) {
set_op_cost(op_cost);
set_cost(cost);
set_card(card);
}
}
}
return ret;