[to #56101088] chore: new system variable _oracle_sql_select_limit master placeholder
This commit is contained in:
parent
8d71561656
commit
5cc0e4fc46
@ -358,6 +358,7 @@ enum ObSysVarClassType
|
||||
SYS_VAR_TRANSACTION_PREALLOC_SIZE = 10250,
|
||||
SYS_VAR_TRANSACTION_WRITE_SET_EXTRACTION = 10251,
|
||||
SYS_VAR_INFORMATION_SCHEMA_STATS_EXPIRY = 10252,
|
||||
SYS_VAR__ORACLE_SQL_SELECT_LIMIT = 10253,
|
||||
};
|
||||
|
||||
}
|
||||
|
@ -353,6 +353,7 @@ namespace share
|
||||
static const char* const OB_SV_TRANSACTION_PREALLOC_SIZE = "transaction_prealloc_size";
|
||||
static const char* const OB_SV_TRANSACTION_WRITE_SET_EXTRACTION = "transaction_write_set_extraction";
|
||||
static const char* const OB_SV_INFORMATION_SCHEMA_STATS_EXPIRY = "information_schema_stats_expiry";
|
||||
static const char* const OB_SV__ORACLE_SQL_SELECT_LIMIT = "_oracle_sql_select_limit";
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -384,6 +384,7 @@ const char *ObSysVarFactory::SYS_VAR_NAMES_SORTED_BY_NAME[] = {
|
||||
"_ob_px_slave_mapping_threshold",
|
||||
"_optimizer_gather_stats_on_load",
|
||||
"_optimizer_null_aware_antijoin",
|
||||
"_oracle_sql_select_limit",
|
||||
"_priv_control",
|
||||
"_px_broadcast_fudge_factor",
|
||||
"_px_dist_agg_partial_rollup_pushdown",
|
||||
@ -724,6 +725,7 @@ const ObSysVarClassType ObSysVarFactory::SYS_VAR_IDS_SORTED_BY_NAME[] = {
|
||||
SYS_VAR__OB_PX_SLAVE_MAPPING_THRESHOLD,
|
||||
SYS_VAR__OPTIMIZER_GATHER_STATS_ON_LOAD,
|
||||
SYS_VAR__OPTIMIZER_NULL_AWARE_ANTIJOIN,
|
||||
SYS_VAR__ORACLE_SQL_SELECT_LIMIT,
|
||||
SYS_VAR__PRIV_CONTROL,
|
||||
SYS_VAR__PX_BROADCAST_FUDGE_FACTOR,
|
||||
SYS_VAR__PX_DIST_AGG_PARTIAL_ROLLUP_PUSHDOWN,
|
||||
@ -1377,7 +1379,8 @@ const char *ObSysVarFactory::SYS_VAR_NAMES_SORTED_BY_ID[] = {
|
||||
"transaction_allow_batching",
|
||||
"transaction_prealloc_size",
|
||||
"transaction_write_set_extraction",
|
||||
"information_schema_stats_expiry"
|
||||
"information_schema_stats_expiry",
|
||||
"_oracle_sql_select_limit"
|
||||
};
|
||||
|
||||
bool ObSysVarFactory::sys_var_name_case_cmp(const char *name1, const ObString &name2)
|
||||
@ -1883,6 +1886,7 @@ int ObSysVarFactory::create_all_sys_vars()
|
||||
+ sizeof(ObSysVarTransactionPreallocSize)
|
||||
+ sizeof(ObSysVarTransactionWriteSetExtraction)
|
||||
+ sizeof(ObSysVarInformationSchemaStatsExpiry)
|
||||
+ sizeof(ObSysVarOracleSqlSelectLimit)
|
||||
;
|
||||
void *ptr = NULL;
|
||||
if (OB_ISNULL(ptr = allocator_.alloc(total_mem_size))) {
|
||||
@ -4924,6 +4928,15 @@ int ObSysVarFactory::create_all_sys_vars()
|
||||
ptr = (void *)((char *)ptr + sizeof(ObSysVarInformationSchemaStatsExpiry));
|
||||
}
|
||||
}
|
||||
if (OB_SUCC(ret)) {
|
||||
if (OB_ISNULL(sys_var_ptr = new (ptr)ObSysVarOracleSqlSelectLimit())) {
|
||||
ret = OB_ALLOCATE_MEMORY_FAILED;
|
||||
LOG_ERROR("fail to new ObSysVarOracleSqlSelectLimit", K(ret));
|
||||
} else {
|
||||
store_buf_[ObSysVarsToIdxMap::get_store_idx(static_cast<int64_t>(SYS_VAR__ORACLE_SQL_SELECT_LIMIT))] = sys_var_ptr;
|
||||
ptr = (void *)((char *)ptr + sizeof(ObSysVarOracleSqlSelectLimit));
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
return ret;
|
||||
@ -8641,6 +8654,17 @@ int ObSysVarFactory::create_sys_var(ObIAllocator &allocator_, ObSysVarClassType
|
||||
}
|
||||
break;
|
||||
}
|
||||
case SYS_VAR__ORACLE_SQL_SELECT_LIMIT: {
|
||||
void *ptr = NULL;
|
||||
if (OB_ISNULL(ptr = allocator_.alloc(sizeof(ObSysVarOracleSqlSelectLimit)))) {
|
||||
ret = OB_ALLOCATE_MEMORY_FAILED;
|
||||
LOG_ERROR("fail to alloc memory", K(ret), K(sizeof(ObSysVarOracleSqlSelectLimit)));
|
||||
} else if (OB_ISNULL(sys_var_ptr = new (ptr)ObSysVarOracleSqlSelectLimit())) {
|
||||
ret = OB_ALLOCATE_MEMORY_FAILED;
|
||||
LOG_ERROR("fail to new ObSysVarOracleSqlSelectLimit", K(ret));
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
default: {
|
||||
ret = OB_ERR_UNEXPECTED;
|
||||
|
@ -2496,6 +2496,13 @@ public:
|
||||
inline virtual ObSysVarClassType get_type() const { return SYS_VAR_INFORMATION_SCHEMA_STATS_EXPIRY; }
|
||||
inline virtual const common::ObObj &get_global_default_value() const { return ObSysVariables::get_default_value(336); }
|
||||
};
|
||||
class ObSysVarOracleSqlSelectLimit : public ObIntSysVar
|
||||
{
|
||||
public:
|
||||
ObSysVarOracleSqlSelectLimit() : ObIntSysVar(NULL, NULL, NULL, NULL, NULL) {}
|
||||
inline virtual ObSysVarClassType get_type() const { return SYS_VAR__ORACLE_SQL_SELECT_LIMIT; }
|
||||
inline virtual const common::ObObj &get_global_default_value() const { return ObSysVariables::get_default_value(337); }
|
||||
};
|
||||
|
||||
|
||||
class ObSysVarFactory
|
||||
@ -2516,7 +2523,7 @@ public:
|
||||
static const common::ObString get_sys_var_name_by_id(ObSysVarClassType sys_var_id);
|
||||
|
||||
const static int64_t MYSQL_SYS_VARS_COUNT = 99;
|
||||
const static int64_t OB_SYS_VARS_COUNT = 238;
|
||||
const static int64_t OB_SYS_VARS_COUNT = 239;
|
||||
const static int64_t ALL_SYS_VARS_COUNT = MYSQL_SYS_VARS_COUNT + OB_SYS_VARS_COUNT;
|
||||
const static int64_t INVALID_MAX_READ_STALE_TIME = -1;
|
||||
|
||||
|
@ -4766,13 +4766,28 @@ static struct VarsInit{
|
||||
ObSysVars[336].alias_ = "OB_SV_INFORMATION_SCHEMA_STATS_EXPIRY" ;
|
||||
}();
|
||||
|
||||
[&] (){
|
||||
ObSysVars[337].default_value_ = "9223372036854775807" ;
|
||||
ObSysVars[337].info_ = "used by JDBC setMaxRows() interface to specify limitation of row number in ResultSet" ;
|
||||
ObSysVars[337].name_ = "_oracle_sql_select_limit" ;
|
||||
ObSysVars[337].data_type_ = ObIntType ;
|
||||
ObSysVars[337].min_val_ = "0" ;
|
||||
ObSysVars[337].max_val_ = "9223372036854775807" ;
|
||||
ObSysVars[337].flags_ = ObSysVarFlag::SESSION_SCOPE | ObSysVarFlag::INVISIBLE | ObSysVarFlag::ORACLE_ONLY ;
|
||||
ObSysVars[337].id_ = SYS_VAR__ORACLE_SQL_SELECT_LIMIT ;
|
||||
cur_max_var_id = MAX(cur_max_var_id, static_cast<int64_t>(SYS_VAR__ORACLE_SQL_SELECT_LIMIT)) ;
|
||||
ObSysVarsIdToArrayIdx[SYS_VAR__ORACLE_SQL_SELECT_LIMIT] = 337 ;
|
||||
ObSysVars[337].base_value_ = "9223372036854775807" ;
|
||||
ObSysVars[337].alias_ = "OB_SV__ORACLE_SQL_SELECT_LIMIT" ;
|
||||
}();
|
||||
|
||||
if (cur_max_var_id >= ObSysVarFactory::OB_MAX_SYS_VAR_ID) {
|
||||
HasInvalidSysVar = true;
|
||||
}
|
||||
}
|
||||
}vars_init;
|
||||
|
||||
static int64_t var_amount = 337;
|
||||
static int64_t var_amount = 338;
|
||||
|
||||
int64_t ObSysVariables::get_all_sys_var_count(){ return ObSysVarFactory::ALL_SYS_VARS_COUNT;}
|
||||
ObSysVarClassType ObSysVariables::get_sys_var_id(int64_t i){ return ObSysVars[i].id_;}
|
||||
|
@ -4952,5 +4952,20 @@
|
||||
"min_val": "0",
|
||||
"max_val": "31536000",
|
||||
"publish_version": "424"
|
||||
},
|
||||
"_oracle_sql_select_limit": {
|
||||
"id": 10253,
|
||||
"name": "_oracle_sql_select_limit",
|
||||
"default_value": "9223372036854775807",
|
||||
"base_value": "9223372036854775807",
|
||||
"data_type": "int",
|
||||
"info": "used by JDBC setMaxRows() interface to specify limitation of row number in ResultSet",
|
||||
"flags": "SESSION | INVISIBLE | ORACLE_ONLY",
|
||||
"min_val": "0",
|
||||
"max_val": "9223372036854775807",
|
||||
"publish_version": "424",
|
||||
"info_cn": "",
|
||||
"background_cn": "",
|
||||
"ref_url": ""
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user