[CP] disable var assign use das default

This commit is contained in:
obdev 2023-11-13 07:13:15 +00:00 committed by ob-robot
parent 66027a8f16
commit 6e6eedc0b8
6 changed files with 12 additions and 6 deletions

View File

@ -1400,7 +1400,7 @@ DEF_BOOL(_enable_new_sql_nio, OB_CLUSTER_PARAMETER, "true",
ObParameterAttr(Section::OBSERVER, Source::DEFAULT, EditLevel::STATIC_EFFECTIVE));
// Add a config to enable use das if the sql statement has variable assignment
DEF_BOOL(_enable_var_assign_use_das, OB_TENANT_PARAMETER, "True",
DEF_BOOL(_enable_var_assign_use_das, OB_TENANT_PARAMETER, "False",
"enable use das if the sql statement has variable assignment",
ObParameterAttr(Section::OBSERVER, Source::DEFAULT, EditLevel::DYNAMIC_EFFECTIVE));
// query response time

View File

@ -1486,7 +1486,7 @@ int ObJoinOrder::will_use_das(const uint64_t table_id,
is_sample_stmt = true;
}
}
bool enable_var_assign_use_das = true;
bool enable_var_assign_use_das = false;
if (OB_SUCC(ret)) {
ObSQLSessionInfo *session_info = NULL;
if (OB_NOT_NULL(session_info = get_plan()->get_optimizer_context().get_session_info())) {
@ -1500,12 +1500,14 @@ int ObJoinOrder::will_use_das(const uint64_t table_id,
bool hint_force_das = false;
bool hint_force_no_das = false;
int64_t explicit_dop = ObGlobalHint::UNSET_PARALLEL;
// TODO: access virtual table by remote das task is not supported, it will report 4016 error in execute server
// Ensure that the following scenarios will not combined with virtual table
force_das_tsc = get_plan()->get_optimizer_context().in_nested_sql() ||
get_plan()->get_optimizer_context().has_pl_udf() ||
get_plan()->get_optimizer_context().has_dblink() ||
get_plan()->get_optimizer_context().has_subquery_in_function_table() ||
get_plan()->get_optimizer_context().has_cursor_expression() ||
(get_plan()->get_optimizer_context().has_var_assign() && enable_var_assign_use_das) ||
(get_plan()->get_optimizer_context().has_var_assign() && enable_var_assign_use_das && !is_virtual_table(ref_id)) ||
is_batch_update_table;
if (EXTERNAL_TABLE == table_item->table_type_) {
create_das_path = false;

View File

@ -1004,7 +1004,7 @@ public:
px_join_skew_minfreq_(30),
min_cluster_version_(0),
is_enable_px_fast_reclaim_(false),
enable_var_assign_use_das_(true),
enable_var_assign_use_das_(false),
cluster_config_version_(-1),
tenant_config_version_(-1),
tenant_id_(0)

View File

@ -4478,7 +4478,7 @@ int ObDMLResolver::do_resolve_generate_table(const ParseNode &table_node,
LOG_WARN("get unexpected error", K(alias_node->type_), K(ret));
}
bool enable_var_assign_use_das = true;
bool enable_var_assign_use_das = false;
if (OB_SUCC(ret)) {
if (OB_NOT_NULL(session_info_)) {
enable_var_assign_use_das = session_info_->is_var_assign_use_das_enabled();

View File

@ -526,7 +526,7 @@ int ObSQLSessionInfo::is_enable_range_extraction_for_not_in(bool &enabled) const
bool ObSQLSessionInfo::is_var_assign_use_das_enabled() const
{
bool bret = true;
bool bret = false;
int64_t tenant_id = get_effective_tenant_id();
omt::ObTenantConfigGuard tenant_config(TENANT_CONF(tenant_id));
if (tenant_config.is_valid()) {

View File

@ -44,3 +44,7 @@ alter system set_tp tp_no = 1200, error_code = 4001, frequency = 1;
alter system set_tp tp_no = 509, error_code = 4016, frequency = 1;
alter system set_tp tp_no = 368, error_code = 4016, frequency = 1;
alter system set_tp tp_no = 551, error_code = 5434, frequency = 1;
alter system set _enable_var_assign_use_das = true tenant = sys;
alter system set _enable_var_assign_use_das = true tenant = all_user;
alter system set _enable_var_assign_use_das = true tenant = all_meta;