Add inner table placeholders for adaptive plan cache

This commit is contained in:
obdev 2025-01-06 02:45:31 +00:00 committed by ob-robot
parent 728c06f502
commit 03efb49b25
14 changed files with 118 additions and 10 deletions

View File

@ -1145,6 +1145,14 @@ int ObGVSql::fill_cells(const ObILibCacheObject *cache_obj, const ObPlanCache &p
cells[i].set_uint64(compile_time);
break;
}
case share::ALL_VIRTUAL_PLAN_STAT_CDE::PLAN_STATUS: {
cells[i].set_null();
break;
}
case share::ALL_VIRTUAL_PLAN_STAT_CDE::ADAPTIVE_FEEDBACK_TIMES: {
cells[i].set_null();
break;
}
default: {
ret = OB_ERR_UNEXPECTED;
SERVER_LOG(WARN,

View File

@ -3179,6 +3179,36 @@ int ObInnerTableSchema::all_virtual_plan_stat_schema(ObTableSchema &table_schema
false, //is_nullable
false); //is_autoincrement
}
if (OB_SUCC(ret)) {
ADD_COLUMN_SCHEMA("plan_status", //column_name
++column_id, //column_id
0, //rowkey_id
0, //index_id
0, //part_key_pos
ObIntType, //column_type
CS_TYPE_INVALID, //column_collation_type
sizeof(int64_t), //column_length
-1, //column_precision
-1, //column_scale
false, //is_nullable
false); //is_autoincrement
}
if (OB_SUCC(ret)) {
ADD_COLUMN_SCHEMA("adaptive_feedback_times", //column_name
++column_id, //column_id
0, //rowkey_id
0, //index_id
0, //part_key_pos
ObIntType, //column_type
CS_TYPE_INVALID, //column_collation_type
sizeof(int64_t), //column_length
-1, //column_precision
-1, //column_scale
false, //is_nullable
false); //is_autoincrement
}
if (OB_SUCC(ret)) {
table_schema.get_part_option().set_part_num(1);
table_schema.set_part_level(PARTITION_LEVEL_ONE);

View File

@ -4763,6 +4763,36 @@ int ObInnerTableSchema::all_virtual_plan_stat_ora_schema(ObTableSchema &table_sc
false, //is_nullable
false); //is_autoincrement
}
if (OB_SUCC(ret)) {
ADD_COLUMN_SCHEMA("PLAN_STATUS", //column_name
++column_id, //column_id
0, //rowkey_id
0, //index_id
0, //part_key_pos
ObNumberType, //column_type
CS_TYPE_INVALID, //column_collation_type
38, //column_length
38, //column_precision
0, //column_scale
false, //is_nullable
false); //is_autoincrement
}
if (OB_SUCC(ret)) {
ADD_COLUMN_SCHEMA("ADAPTIVE_FEEDBACK_TIMES", //column_name
++column_id, //column_id
0, //rowkey_id
0, //index_id
0, //part_key_pos
ObNumberType, //column_type
CS_TYPE_INVALID, //column_collation_type
38, //column_length
38, //column_precision
0, //column_scale
false, //is_nullable
false); //is_autoincrement
}
if (OB_SUCC(ret)) {
table_schema.get_part_option().set_part_num(1);
table_schema.set_part_level(PARTITION_LEVEL_ONE);

View File

@ -111,7 +111,7 @@ int ObInnerTableSchema::gv_ob_plan_cache_plan_stat_schema(ObTableSchema &table_s
table_schema.set_collation_type(ObCharset::get_default_collation(ObCharset::get_default_charset()));
if (OB_SUCC(ret)) {
if (OB_FAIL(table_schema.set_view_definition(R"__( SELECT TENANT_ID,SVR_IP,SVR_PORT,PLAN_ID,SQL_ID,TYPE,IS_BIND_SENSITIVE,IS_BIND_AWARE, DB_ID,STATEMENT,QUERY_SQL,SPECIAL_PARAMS,PARAM_INFOS, SYS_VARS, CONFIGS, PLAN_HASH, FIRST_LOAD_TIME,SCHEMA_VERSION,LAST_ACTIVE_TIME,AVG_EXE_USEC,SLOWEST_EXE_TIME,SLOWEST_EXE_USEC, SLOW_COUNT,HIT_COUNT,PLAN_SIZE,EXECUTIONS,DISK_READS,DIRECT_WRITES,BUFFER_GETS,APPLICATION_WAIT_TIME, CONCURRENCY_WAIT_TIME,USER_IO_WAIT_TIME,ROWS_PROCESSED,ELAPSED_TIME,CPU_TIME,LARGE_QUERYS, DELAYED_LARGE_QUERYS,DELAYED_PX_QUERYS,OUTLINE_VERSION,OUTLINE_ID,OUTLINE_DATA,ACS_SEL_INFO, TABLE_SCAN,EVOLUTION, EVO_EXECUTIONS, EVO_CPU_TIME, TIMEOUT_COUNT, PS_STMT_ID, SESSID, TEMP_TABLES, IS_USE_JIT,OBJECT_TYPE,HINTS_INFO,HINTS_ALL_WORKED, PL_SCHEMA_ID, IS_BATCHED_MULTI_STMT, RULE_NAME FROM oceanbase.__all_virtual_plan_stat WHERE OBJECT_STATUS = 0 AND is_in_pc=true )__"))) {
if (OB_FAIL(table_schema.set_view_definition(R"__( SELECT TENANT_ID,SVR_IP,SVR_PORT,PLAN_ID,SQL_ID,TYPE,IS_BIND_SENSITIVE,IS_BIND_AWARE, DB_ID,STATEMENT,QUERY_SQL,SPECIAL_PARAMS,PARAM_INFOS, SYS_VARS, CONFIGS, PLAN_HASH, FIRST_LOAD_TIME,SCHEMA_VERSION,LAST_ACTIVE_TIME,AVG_EXE_USEC,SLOWEST_EXE_TIME,SLOWEST_EXE_USEC, SLOW_COUNT,HIT_COUNT,PLAN_SIZE,EXECUTIONS,DISK_READS,DIRECT_WRITES,BUFFER_GETS,APPLICATION_WAIT_TIME, CONCURRENCY_WAIT_TIME,USER_IO_WAIT_TIME,ROWS_PROCESSED,ELAPSED_TIME,CPU_TIME,LARGE_QUERYS, DELAYED_LARGE_QUERYS,DELAYED_PX_QUERYS,OUTLINE_VERSION,OUTLINE_ID,OUTLINE_DATA,ACS_SEL_INFO, TABLE_SCAN,EVOLUTION, EVO_EXECUTIONS, EVO_CPU_TIME, TIMEOUT_COUNT, PS_STMT_ID, SESSID, TEMP_TABLES, IS_USE_JIT,OBJECT_TYPE,HINTS_INFO,HINTS_ALL_WORKED, PL_SCHEMA_ID, IS_BATCHED_MULTI_STMT, RULE_NAME, PLAN_STATUS, ADAPTIVE_FEEDBACK_TIMES FROM oceanbase.__all_virtual_plan_stat WHERE OBJECT_STATUS = 0 AND is_in_pc=true )__"))) {
LOG_ERROR("fail to set view_definition", K(ret));
}
}

View File

@ -1233,7 +1233,7 @@ int ObInnerTableSchema::v_ob_plan_cache_plan_stat_schema(ObTableSchema &table_sc
table_schema.set_collation_type(ObCharset::get_default_collation(ObCharset::get_default_charset()));
if (OB_SUCC(ret)) {
if (OB_FAIL(table_schema.set_view_definition(R"__( SELECT TENANT_ID,SVR_IP,SVR_PORT,PLAN_ID,SQL_ID,TYPE,IS_BIND_SENSITIVE,IS_BIND_AWARE, DB_ID,STATEMENT,QUERY_SQL,SPECIAL_PARAMS,PARAM_INFOS, SYS_VARS, CONFIGS, PLAN_HASH, FIRST_LOAD_TIME,SCHEMA_VERSION,LAST_ACTIVE_TIME,AVG_EXE_USEC,SLOWEST_EXE_TIME,SLOWEST_EXE_USEC, SLOW_COUNT,HIT_COUNT,PLAN_SIZE,EXECUTIONS,DISK_READS,DIRECT_WRITES,BUFFER_GETS,APPLICATION_WAIT_TIME, CONCURRENCY_WAIT_TIME,USER_IO_WAIT_TIME,ROWS_PROCESSED,ELAPSED_TIME,CPU_TIME,LARGE_QUERYS, DELAYED_LARGE_QUERYS,DELAYED_PX_QUERYS,OUTLINE_VERSION,OUTLINE_ID,OUTLINE_DATA,ACS_SEL_INFO, TABLE_SCAN,EVOLUTION, EVO_EXECUTIONS, EVO_CPU_TIME, TIMEOUT_COUNT, PS_STMT_ID, SESSID, TEMP_TABLES, IS_USE_JIT,OBJECT_TYPE,HINTS_INFO,HINTS_ALL_WORKED, PL_SCHEMA_ID, IS_BATCHED_MULTI_STMT, RULE_NAME FROM oceanbase.GV$OB_PLAN_CACHE_PLAN_STAT WHERE svr_ip=HOST_IP() AND svr_port=RPC_PORT() )__"))) {
if (OB_FAIL(table_schema.set_view_definition(R"__( SELECT TENANT_ID,SVR_IP,SVR_PORT,PLAN_ID,SQL_ID,TYPE,IS_BIND_SENSITIVE,IS_BIND_AWARE, DB_ID,STATEMENT,QUERY_SQL,SPECIAL_PARAMS,PARAM_INFOS, SYS_VARS, CONFIGS, PLAN_HASH, FIRST_LOAD_TIME,SCHEMA_VERSION,LAST_ACTIVE_TIME,AVG_EXE_USEC,SLOWEST_EXE_TIME,SLOWEST_EXE_USEC, SLOW_COUNT,HIT_COUNT,PLAN_SIZE,EXECUTIONS,DISK_READS,DIRECT_WRITES,BUFFER_GETS,APPLICATION_WAIT_TIME, CONCURRENCY_WAIT_TIME,USER_IO_WAIT_TIME,ROWS_PROCESSED,ELAPSED_TIME,CPU_TIME,LARGE_QUERYS, DELAYED_LARGE_QUERYS,DELAYED_PX_QUERYS,OUTLINE_VERSION,OUTLINE_ID,OUTLINE_DATA,ACS_SEL_INFO, TABLE_SCAN,EVOLUTION, EVO_EXECUTIONS, EVO_CPU_TIME, TIMEOUT_COUNT, PS_STMT_ID, SESSID, TEMP_TABLES, IS_USE_JIT,OBJECT_TYPE,HINTS_INFO,HINTS_ALL_WORKED, PL_SCHEMA_ID, IS_BATCHED_MULTI_STMT, RULE_NAME, PLAN_STATUS, ADAPTIVE_FEEDBACK_TIMES FROM oceanbase.GV$OB_PLAN_CACHE_PLAN_STAT WHERE svr_ip=HOST_IP() AND svr_port=RPC_PORT() )__"))) {
LOG_ERROR("fail to set view_definition", K(ret));
}
}

View File

@ -264,7 +264,7 @@ int ObInnerTableSchema::gv_ob_plan_cache_plan_stat_ora_schema(ObTableSchema &tab
table_schema.set_collation_type(ObCharset::get_default_collation(ObCharset::get_default_charset()));
if (OB_SUCC(ret)) {
if (OB_FAIL(table_schema.set_view_definition(R"__( SELECT TENANT_ID AS TENANT_ID, SVR_IP AS SVR_IP, SVR_PORT AS SVR_PORT, PLAN_ID AS PLAN_ID, SQL_ID AS SQL_ID, TYPE AS TYPE, IS_BIND_SENSITIVE AS IS_BIND_SENSITIVE, IS_BIND_AWARE AS IS_BIND_AWARE, DB_ID AS DB_ID, STATEMENT AS STATEMENT, QUERY_SQL AS QUERY_SQL, SPECIAL_PARAMS AS SPECIAL_PARAMS, PARAM_INFOS AS PARAM_INFOS, SYS_VARS AS SYS_VARS, PLAN_HASH AS PLAN_HASH, FIRST_LOAD_TIME AS FIRST_LOAD_TIME, SCHEMA_VERSION AS SCHEMA_VERSION, LAST_ACTIVE_TIME AS LAST_ACTIVE_TIME, AVG_EXE_USEC AS AVG_EXE_USEC, SLOWEST_EXE_TIME AS SLOWEST_EXE_TIME, SLOWEST_EXE_USEC AS SLOWEST_EXE_USEC, SLOW_COUNT AS SLOW_COUNT, HIT_COUNT AS HIT_COUNT, PLAN_SIZE AS PLAN_SIZE, EXECUTIONS AS EXECUTIONS, DISK_READS AS DISK_READS, DIRECT_WRITES AS DIRECT_WRITES, BUFFER_GETS AS BUFFERS_GETS, APPLICATION_WAIT_TIME AS APPLICATION_WATI_TIME, CONCURRENCY_WAIT_TIME AS CONCURRENCY_WAIT_TIME, USER_IO_WAIT_TIME AS USER_IO_WAIT_TIME, ROWS_PROCESSED AS ROWS_PROCESSED, ELAPSED_TIME AS ELAPSED_TIME, CPU_TIME AS CPU_TIME, LARGE_QUERYS AS LARGE_QUERYS, DELAYED_LARGE_QUERYS AS DELAYED_LARGE_QUERYS, DELAYED_PX_QUERYS AS DELAYED_PX_QUERYS, OUTLINE_VERSION AS OUTLINE_VERSION, OUTLINE_ID AS OUTLINE_ID, OUTLINE_DATA AS OUTLINE_DATA, HINTS_INFO AS HINTS_INFO, HINTS_ALL_WORKED AS HINTS_ALL_WORKED, ACS_SEL_INFO AS ACS_SEL_INFO, TABLE_SCAN AS TABLE_SCAN, EVOLUTION AS EVOLUTION, EVO_EXECUTIONS AS EVO_EXECUTIONS, EVO_CPU_TIME AS EVO_CPU_TIME, TIMEOUT_COUNT AS TIMEOUT_COUNT, PS_STMT_ID AS PS_STMT_ID, SESSID AS SESSID, TEMP_TABLES AS TEMP_TABLES, IS_USE_JIT AS IS_USE_JIT, OBJECT_TYPE AS OBJECT_TYPE, PL_SCHEMA_ID AS PL_SCHEMA_ID, IS_BATCHED_MULTI_STMT AS IS_BATCHED_MULTI_STMT FROM SYS.ALL_VIRTUAL_PLAN_STAT WHERE OBJECT_STATUS = 0 AND IS_IN_PC='1' )__"))) {
if (OB_FAIL(table_schema.set_view_definition(R"__( SELECT TENANT_ID AS TENANT_ID, SVR_IP AS SVR_IP, SVR_PORT AS SVR_PORT, PLAN_ID AS PLAN_ID, SQL_ID AS SQL_ID, TYPE AS TYPE, IS_BIND_SENSITIVE AS IS_BIND_SENSITIVE, IS_BIND_AWARE AS IS_BIND_AWARE, DB_ID AS DB_ID, STATEMENT AS STATEMENT, QUERY_SQL AS QUERY_SQL, SPECIAL_PARAMS AS SPECIAL_PARAMS, PARAM_INFOS AS PARAM_INFOS, SYS_VARS AS SYS_VARS, PLAN_HASH AS PLAN_HASH, FIRST_LOAD_TIME AS FIRST_LOAD_TIME, SCHEMA_VERSION AS SCHEMA_VERSION, LAST_ACTIVE_TIME AS LAST_ACTIVE_TIME, AVG_EXE_USEC AS AVG_EXE_USEC, SLOWEST_EXE_TIME AS SLOWEST_EXE_TIME, SLOWEST_EXE_USEC AS SLOWEST_EXE_USEC, SLOW_COUNT AS SLOW_COUNT, HIT_COUNT AS HIT_COUNT, PLAN_SIZE AS PLAN_SIZE, EXECUTIONS AS EXECUTIONS, DISK_READS AS DISK_READS, DIRECT_WRITES AS DIRECT_WRITES, BUFFER_GETS AS BUFFERS_GETS, APPLICATION_WAIT_TIME AS APPLICATION_WATI_TIME, CONCURRENCY_WAIT_TIME AS CONCURRENCY_WAIT_TIME, USER_IO_WAIT_TIME AS USER_IO_WAIT_TIME, ROWS_PROCESSED AS ROWS_PROCESSED, ELAPSED_TIME AS ELAPSED_TIME, CPU_TIME AS CPU_TIME, LARGE_QUERYS AS LARGE_QUERYS, DELAYED_LARGE_QUERYS AS DELAYED_LARGE_QUERYS, DELAYED_PX_QUERYS AS DELAYED_PX_QUERYS, OUTLINE_VERSION AS OUTLINE_VERSION, OUTLINE_ID AS OUTLINE_ID, OUTLINE_DATA AS OUTLINE_DATA, HINTS_INFO AS HINTS_INFO, HINTS_ALL_WORKED AS HINTS_ALL_WORKED, ACS_SEL_INFO AS ACS_SEL_INFO, TABLE_SCAN AS TABLE_SCAN, EVOLUTION AS EVOLUTION, EVO_EXECUTIONS AS EVO_EXECUTIONS, EVO_CPU_TIME AS EVO_CPU_TIME, TIMEOUT_COUNT AS TIMEOUT_COUNT, PS_STMT_ID AS PS_STMT_ID, SESSID AS SESSID, TEMP_TABLES AS TEMP_TABLES, IS_USE_JIT AS IS_USE_JIT, OBJECT_TYPE AS OBJECT_TYPE, PL_SCHEMA_ID AS PL_SCHEMA_ID, IS_BATCHED_MULTI_STMT AS IS_BATCHED_MULTI_STMT, RULE_NAME AS RULE_NAME, PLAN_STATUS AS PLAN_STATUS, ADAPTIVE_FEEDBACK_TIMES AS ADAPTIVE_FEEDBACK_TIMES FROM SYS.ALL_VIRTUAL_PLAN_STAT WHERE OBJECT_STATUS = 0 AND IS_IN_PC='1' )__"))) {
LOG_ERROR("fail to set view_definition", K(ret));
}
}
@ -315,7 +315,7 @@ int ObInnerTableSchema::v_ob_plan_cache_plan_stat_ora_schema(ObTableSchema &tabl
table_schema.set_collation_type(ObCharset::get_default_collation(ObCharset::get_default_charset()));
if (OB_SUCC(ret)) {
if (OB_FAIL(table_schema.set_view_definition(R"__( SELECT TENANT_ID, SVR_IP, SVR_PORT, PLAN_ID, SQL_ID, TYPE, IS_BIND_SENSITIVE, IS_BIND_AWARE, DB_ID, STATEMENT, QUERY_SQL, SPECIAL_PARAMS, PARAM_INFOS, SYS_VARS, PLAN_HASH, FIRST_LOAD_TIME, SCHEMA_VERSION, LAST_ACTIVE_TIME, AVG_EXE_USEC, SLOWEST_EXE_TIME, SLOWEST_EXE_USEC, SLOW_COUNT, HIT_COUNT, PLAN_SIZE, EXECUTIONS, DISK_READS, DIRECT_WRITES, BUFFERS_GETS, APPLICATION_WATI_TIME, CONCURRENCY_WAIT_TIME, USER_IO_WAIT_TIME, ROWS_PROCESSED, ELAPSED_TIME, CPU_TIME, LARGE_QUERYS, DELAYED_LARGE_QUERYS, DELAYED_PX_QUERYS, OUTLINE_VERSION, OUTLINE_ID, OUTLINE_DATA, HINTS_INFO, HINTS_ALL_WORKED, ACS_SEL_INFO, TABLE_SCAN, EVOLUTION, EVO_EXECUTIONS, EVO_CPU_TIME, TIMEOUT_COUNT, PS_STMT_ID, SESSID, TEMP_TABLES, IS_USE_JIT, OBJECT_TYPE, PL_SCHEMA_ID, IS_BATCHED_MULTI_STMT FROM SYS.GV$OB_PLAN_CACHE_PLAN_STAT WHERE SVR_IP=HOST_IP() AND SVR_PORT=RPC_PORT() )__"))) {
if (OB_FAIL(table_schema.set_view_definition(R"__( SELECT TENANT_ID, SVR_IP, SVR_PORT, PLAN_ID, SQL_ID, TYPE, IS_BIND_SENSITIVE, IS_BIND_AWARE, DB_ID, STATEMENT, QUERY_SQL, SPECIAL_PARAMS, PARAM_INFOS, SYS_VARS, PLAN_HASH, FIRST_LOAD_TIME, SCHEMA_VERSION, LAST_ACTIVE_TIME, AVG_EXE_USEC, SLOWEST_EXE_TIME, SLOWEST_EXE_USEC, SLOW_COUNT, HIT_COUNT, PLAN_SIZE, EXECUTIONS, DISK_READS, DIRECT_WRITES, BUFFERS_GETS, APPLICATION_WATI_TIME, CONCURRENCY_WAIT_TIME, USER_IO_WAIT_TIME, ROWS_PROCESSED, ELAPSED_TIME, CPU_TIME, LARGE_QUERYS, DELAYED_LARGE_QUERYS, DELAYED_PX_QUERYS, OUTLINE_VERSION, OUTLINE_ID, OUTLINE_DATA, HINTS_INFO, HINTS_ALL_WORKED, ACS_SEL_INFO, TABLE_SCAN, EVOLUTION, EVO_EXECUTIONS, EVO_CPU_TIME, TIMEOUT_COUNT, PS_STMT_ID, SESSID, TEMP_TABLES, IS_USE_JIT, OBJECT_TYPE, PL_SCHEMA_ID, IS_BATCHED_MULTI_STMT, RULE_NAME, PLAN_STATUS, ADAPTIVE_FEEDBACK_TIMES FROM SYS.GV$OB_PLAN_CACHE_PLAN_STAT WHERE SVR_IP=HOST_IP() AND SVR_PORT=RPC_PORT() )__"))) {
LOG_ERROR("fail to set view_definition", K(ret));
}
}

View File

@ -103,7 +103,9 @@ struct ALL_VIRTUAL_PLAN_STAT_CDE {
ERASE_TIME,
COMPILE_TIME,
PL_CG_MEM_HOLD,
PL_EVICT_VERSION
PL_EVICT_VERSION,
PLAN_STATUS,
ADAPTIVE_FEEDBACK_TIMES
};
};
@ -252,7 +254,9 @@ struct ALL_VIRTUAL_PLAN_STAT_ORA_CDE {
ERASE_TIME,
COMPILE_TIME,
PL_CG_MEM_HOLD,
PL_EVICT_VERSION
PL_EVICT_VERSION,
PLAN_STATUS,
ADAPTIVE_FEEDBACK_TIMES
};
};

View File

@ -8509,6 +8509,8 @@ def_table_schema(
('compile_time', 'uint'),
('pl_cg_mem_hold', 'int'),
('pl_evict_version', 'int'),
('plan_status', 'int'),
('adaptive_feedback_times', 'int'),
],
vtable_route_policy = 'distributed',
partition_columns = ['svr_ip', 'svr_port'],
@ -16372,7 +16374,7 @@ def_table_schema(
DELAYED_LARGE_QUERYS,DELAYED_PX_QUERYS,OUTLINE_VERSION,OUTLINE_ID,OUTLINE_DATA,ACS_SEL_INFO,
TABLE_SCAN,EVOLUTION, EVO_EXECUTIONS, EVO_CPU_TIME, TIMEOUT_COUNT, PS_STMT_ID, SESSID,
TEMP_TABLES, IS_USE_JIT,OBJECT_TYPE,HINTS_INFO,HINTS_ALL_WORKED, PL_SCHEMA_ID,
IS_BATCHED_MULTI_STMT, RULE_NAME
IS_BATCHED_MULTI_STMT, RULE_NAME, PLAN_STATUS, ADAPTIVE_FEEDBACK_TIMES
FROM oceanbase.__all_virtual_plan_stat WHERE OBJECT_STATUS = 0 AND is_in_pc=true
""".replace("\n", " "),
@ -18095,7 +18097,7 @@ def_table_schema(
DELAYED_LARGE_QUERYS,DELAYED_PX_QUERYS,OUTLINE_VERSION,OUTLINE_ID,OUTLINE_DATA,ACS_SEL_INFO,
TABLE_SCAN,EVOLUTION, EVO_EXECUTIONS, EVO_CPU_TIME, TIMEOUT_COUNT, PS_STMT_ID, SESSID,
TEMP_TABLES, IS_USE_JIT,OBJECT_TYPE,HINTS_INFO,HINTS_ALL_WORKED, PL_SCHEMA_ID,
IS_BATCHED_MULTI_STMT, RULE_NAME
IS_BATCHED_MULTI_STMT, RULE_NAME, PLAN_STATUS, ADAPTIVE_FEEDBACK_TIMES
FROM oceanbase.GV$OB_PLAN_CACHE_PLAN_STAT WHERE svr_ip=HOST_IP() AND svr_port=RPC_PORT()
""".replace("\n", " "),
@ -61187,7 +61189,10 @@ def_table_schema(
IS_USE_JIT AS IS_USE_JIT,
OBJECT_TYPE AS OBJECT_TYPE,
PL_SCHEMA_ID AS PL_SCHEMA_ID,
IS_BATCHED_MULTI_STMT AS IS_BATCHED_MULTI_STMT
IS_BATCHED_MULTI_STMT AS IS_BATCHED_MULTI_STMT,
RULE_NAME AS RULE_NAME,
PLAN_STATUS AS PLAN_STATUS,
ADAPTIVE_FEEDBACK_TIMES AS ADAPTIVE_FEEDBACK_TIMES
FROM SYS.ALL_VIRTUAL_PLAN_STAT WHERE OBJECT_STATUS = 0 AND IS_IN_PC='1'
""".replace("\n", " ")
)
@ -61258,7 +61263,10 @@ TEMP_TABLES,
IS_USE_JIT,
OBJECT_TYPE,
PL_SCHEMA_ID,
IS_BATCHED_MULTI_STMT FROM SYS.GV$OB_PLAN_CACHE_PLAN_STAT WHERE SVR_IP=HOST_IP() AND SVR_PORT=RPC_PORT()
IS_BATCHED_MULTI_STMT,
RULE_NAME,
PLAN_STATUS,
ADAPTIVE_FEEDBACK_TIMES FROM SYS.GV$OB_PLAN_CACHE_PLAN_STAT WHERE SVR_IP=HOST_IP() AND SVR_PORT=RPC_PORT()
""".replace("\n", " ")
)

View File

@ -2381,3 +2381,15 @@ DEF_INT(package_state_sync_max_size, OB_TENANT_PARAMETER, "8192", "[0, 16777216]
DEF_CAP(_parquet_row_group_prebuffer_size, OB_CLUSTER_PARAMETER, "0M", "[0M,)",
"the parquet prefetch maximum row group size. Range: [0, +∞)",
ObParameterAttr(Section::SSTABLE, Source::DEFAULT, EditLevel::DYNAMIC_EFFECTIVE));
DEF_TIME(_pc_adaptive_min_exec_time_threshold, OB_TENANT_PARAMETER, "1s", "[0, )",
"minimum execution time threshold for enabling adaptive plan cache. Range: [0, +∞]",
ObParameterAttr(Section::TENANT, Source::DEFAULT, EditLevel::DYNAMIC_EFFECTIVE));
DEF_INT(_pc_adaptive_effectiveness_ratio_threshold, OB_TENANT_PARAMETER, "5", "[0, )",
"minimum effectiveness ratio threshold for enabling adaptive plan cache. Range:[0, +∞]",
ObParameterAttr(Section::TENANT, Source::DEFAULT, EditLevel::DYNAMIC_EFFECTIVE));
DEF_BOOL(enable_adaptive_plan_cache, OB_TENANT_PARAMETER, "False",
"enable/disable adaptive plan cache",
ObParameterAttr(Section::TENANT, Source::DEFAULT, EditLevel::DYNAMIC_EFFECTIVE));
DEF_BOOL(_force_enable_plan_tracing, OB_TENANT_PARAMETER, "True",
"controls whether plan tracking is enabled when plan cache is disabled",
ObParameterAttr(Section::TENANT, Source::DEFAULT, EditLevel::DYNAMIC_EFFECTIVE));

View File

@ -93,6 +93,7 @@ direct_load_allow_fallback
disk_io_thread_count
dtl_buffer_size
dump_data_dictionary_to_log_interval
enable_adaptive_plan_cache
enable_async_syslog
enable_auto_split
enable_cgroup
@ -397,6 +398,7 @@ _faststack_min_interval
_faststack_req_queue_size_threshold
_fast_commit_callback_count
_follower_snapshot_read_retry_duration
_force_enable_plan_tracing
_force_explict_500_malloc
_force_hash_groupby_dump
_force_hash_join_spill
@ -477,6 +479,8 @@ _parallel_redo_logging_trigger
_parallel_server_sleep_time
_parquet_row_group_prebuffer_size
_partition_wise_plan_enabled
_pc_adaptive_effectiveness_ratio_threshold
_pc_adaptive_min_exec_time_threshold
_pdml_thread_cache_size
_pipelined_table_function_memory_limit
_preserve_order_for_pagination

View File

@ -83,6 +83,8 @@ HINTS_ALL_WORKED tinyint(4) NO NULL
PL_SCHEMA_ID bigint(20) unsigned NO NULL
IS_BATCHED_MULTI_STMT tinyint(4) NO NULL
RULE_NAME varchar(256) NO NULL
PLAN_STATUS bigint(20) NO NULL
ADAPTIVE_FEEDBACK_TIMES bigint(20) NO NULL
select /*+QUERY_TIMEOUT(60000000)*/ count(*) as cnt from (select * from oceanbase.GV$OB_PLAN_CACHE_PLAN_STAT limit 1);
cnt
1
@ -893,6 +895,8 @@ HINTS_ALL_WORKED tinyint(4) NO
PL_SCHEMA_ID bigint(20) unsigned NO
IS_BATCHED_MULTI_STMT tinyint(4) NO
RULE_NAME varchar(256) NO
PLAN_STATUS bigint(20) NO
ADAPTIVE_FEEDBACK_TIMES bigint(20) NO
select /*+QUERY_TIMEOUT(60000000)*/ count(*) as cnt from (select * from oceanbase.V$OB_PLAN_CACHE_PLAN_STAT limit 1);
cnt
1

View File

@ -84,6 +84,8 @@ HINTS_ALL_WORKED tinyint(4) NO NULL
PL_SCHEMA_ID bigint(20) unsigned NO NULL
IS_BATCHED_MULTI_STMT tinyint(4) NO NULL
RULE_NAME varchar(256) NO NULL
PLAN_STATUS bigint(20) NO NULL
ADAPTIVE_FEEDBACK_TIMES bigint(20) NO NULL
select /*+QUERY_TIMEOUT(60000000)*/ count(*) as cnt from (select * from oceanbase.GV$OB_PLAN_CACHE_PLAN_STAT limit 1);
cnt
1
@ -894,6 +896,8 @@ HINTS_ALL_WORKED tinyint(4) NO
PL_SCHEMA_ID bigint(20) unsigned NO
IS_BATCHED_MULTI_STMT tinyint(4) NO
RULE_NAME varchar(256) NO
PLAN_STATUS bigint(20) NO
ADAPTIVE_FEEDBACK_TIMES bigint(20) NO
select /*+QUERY_TIMEOUT(60000000)*/ count(*) as cnt from (select * from oceanbase.V$OB_PLAN_CACHE_PLAN_STAT limit 1);
cnt
1

View File

@ -381,6 +381,8 @@ erase_time timestamp(6) NO NULL
compile_time bigint(20) unsigned NO NULL
pl_cg_mem_hold bigint(20) NO NULL
pl_evict_version bigint(20) NO NULL
plan_status bigint(20) NO NULL
adaptive_feedback_times bigint(20) NO NULL
select /*+QUERY_TIMEOUT(60000000)*/ IF(count(*) >= 0, 1, 0) from oceanbase.__all_virtual_plan_stat;
IF(count(*) >= 0, 1, 0)
1

View File

@ -394,6 +394,8 @@ erase_time timestamp(6) NO NULL
compile_time bigint(20) unsigned NO NULL
pl_cg_mem_hold bigint(20) NO NULL
pl_evict_version bigint(20) NO NULL
plan_status bigint(20) NO NULL
adaptive_feedback_times bigint(20) NO NULL
select /*+QUERY_TIMEOUT(60000000)*/ IF(count(*) >= 0, 1, 0) from oceanbase.__all_virtual_plan_stat;
IF(count(*) >= 0, 1, 0)
1