Completing the information of insert into select clause in direct-mode

This commit is contained in:
obdev
2023-02-13 11:41:53 +00:00
committed by ob-robot
parent 22d1f15814
commit f1ef7006da
6 changed files with 59 additions and 33 deletions

View File

@ -22,6 +22,7 @@
#include "sql/optimizer/ob_logical_operator.h"
#include "common/ob_smart_call.h"
#include "sql/ob_optimizer_trace_impl.h"
#include "sql/engine/cmd/ob_table_direct_insert_service.h"
using namespace oceanbase;
using namespace sql;
using namespace oceanbase::common;
@ -675,6 +676,12 @@ int ObOptimizer::init_env_info(ObDMLStmt &stmt)
ctx_.set_parallel(1);
ctx_.add_plan_note(PARALLEL_DISABLED_BY_PL_UDF_DAS, 1);
}
bool is_direct_insert = false;
if (OB_FAIL(ObTableDirectInsertService::check_direct_insert(ctx_, stmt, is_direct_insert))) {
LOG_WARN("failed to check direct insert", KR(ret));
} else if (is_direct_insert) {
ctx_.add_plan_note(DIRECT_MODE_INSERT_INTO_SELECT);
}
}
// init column usage info