disable _trace_control_info set by user
This commit is contained in:
parent
1ec41795d6
commit
dd54f8018d
2
deps/oblib/src/lib/utility/ob_tracepoint.h
vendored
2
deps/oblib/src/lib/utility/ob_tracepoint.h
vendored
@ -684,6 +684,8 @@ class EventTable
|
||||
EN_TX_RESULT_INCOMPLETE = 2011,
|
||||
EN_THREAD_HANG = 2022,
|
||||
|
||||
EN_ENABLE_SET_TRACE_CONTROL_INFO = 2100,
|
||||
|
||||
EVENT_TABLE_MAX = SIZE_OF_EVENT_TABLE
|
||||
};
|
||||
|
||||
|
@ -38,6 +38,7 @@ const char* const ENABLE_AUTO_LEADER_SWITCH = "enable_auto_leader_switch";
|
||||
const char* const MAJOR_COMPACT_TRIGGER = "major_compact_trigger";
|
||||
const char* const ENABLE_PERF_EVENT = "enable_perf_event";
|
||||
const char* const ENABLE_SQL_AUDIT = "enable_sql_audit";
|
||||
const char *const OB_STR_TRC_CONTROL_INFO = "_trace_control_info";
|
||||
const char* const CONFIG_TRUE_VALUE_BOOL = "1";
|
||||
const char* const CONFIG_FALSE_VALUE_BOOL = "0";
|
||||
const char* const CONFIG_TRUE_VALUE_STRING = "true";
|
||||
|
@ -1973,6 +1973,12 @@ int ObSetConfigResolver::resolve(const ParseNode &parse_tree)
|
||||
|
||||
if (OB_SUCC(ret)) {
|
||||
bool is_backup_config = false;
|
||||
bool can_set_trace_control_info = false;
|
||||
int tmp_ret = OB_SUCCESS;
|
||||
tmp_ret = OB_E(EventTable::EN_ENABLE_SET_TRACE_CONTROL_INFO) OB_SUCCESS;
|
||||
if (OB_SUCCESS != tmp_ret) {
|
||||
can_set_trace_control_info = true;
|
||||
}
|
||||
share::ObBackupConfigChecker backup_config_checker;
|
||||
if (OB_FAIL(backup_config_checker.check_config_name(item.name_.ptr(), is_backup_config))) {
|
||||
LOG_WARN("fail to check is valid backup config", K(ret), "config_name", item.name_.ptr(), "config value", item.value_.ptr());
|
||||
@ -2041,6 +2047,13 @@ int ObSetConfigResolver::resolve(const ParseNode &parse_tree)
|
||||
if(OB_FAIL(observer::ObRSTCollector::get_instance().control_query_response_time(item.exec_tenant_id_, item.value_.str()))){
|
||||
LOG_WARN("set query response time stats", K(ret));
|
||||
}
|
||||
} else if (!can_set_trace_control_info &&
|
||||
session_info_ != NULL &&
|
||||
0 == STRCMP(item.name_.ptr(), OB_STR_TRC_CONTROL_INFO) &&
|
||||
!session_info_->is_inner()) {
|
||||
ret = OB_OP_NOT_ALLOW;
|
||||
LOG_WARN("_trace_control_info is not allowed to modify");
|
||||
LOG_USER_ERROR(OB_OP_NOT_ALLOW, "alter the parameter _trace_control_info");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user