[CP] Fix the problem of still performing hard parsing when the SQL current limit reaches 0
This commit is contained in:
@ -1206,7 +1206,18 @@ int ObSqlPlanSet::add_plan(ObPhysicalPlan &plan,
|
||||
candi_table_locs))) {
|
||||
LOG_WARN("fail to get physical locations", K(ret));
|
||||
} else if (OB_FAIL(set_concurrent_degree(outline_param_idx, plan))) {
|
||||
LOG_WARN("fail to check concurrent degree", K(ret));
|
||||
if (OB_REACH_MAX_CONCURRENT_NUM == ret && 0 == plan.get_max_concurrent_num()) {
|
||||
pc_ctx.is_max_curr_limit_ = true;
|
||||
ret = OB_SUCCESS;
|
||||
} else {
|
||||
LOG_WARN("fail to check concurrent degree", K(ret));
|
||||
}
|
||||
} else {
|
||||
// do nothing
|
||||
}
|
||||
|
||||
if (OB_FAIL(ret)) {
|
||||
// do nothing
|
||||
} else {
|
||||
if (pc_ctx.exec_ctx_.get_physical_plan_ctx()->get_or_expand_transformed()) {
|
||||
need_try_plan_ |= TRY_PLAN_OR_EXPAND;
|
||||
@ -1308,7 +1319,6 @@ int ObSqlPlanSet::add_plan(ObPhysicalPlan &plan,
|
||||
// }
|
||||
// }
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user