From bb95fcdd866bab71b77ecf1110f575e93ea875e3 Mon Sep 17 00:00:00 2001 From: akaError Date: Mon, 13 Nov 2023 09:09:08 +0000 Subject: [PATCH] pre take position for inner table --- .../ob_inner_table_schema.11001_11050.cpp | 30 +++++++++++++++++++ .../ob_inner_table_schema.11051_11100.cpp | 30 +++++++++++++++++++ .../ob_inner_table_schema.15001_15050.cpp | 30 +++++++++++++++++++ .../ob_inner_table_schema.15051_15100.cpp | 30 +++++++++++++++++++ src/share/inner_table/ob_inner_table_schema.h | 8 +++-- .../inner_table/ob_inner_table_schema_def.py | 6 +++- .../all_virtual_sys_parameter_stat.result | 2 ++ 7 files changed, 133 insertions(+), 3 deletions(-) diff --git a/src/share/inner_table/ob_inner_table_schema.11001_11050.cpp b/src/share/inner_table/ob_inner_table_schema.11001_11050.cpp index d8acdb963..da1678a4d 100644 --- a/src/share/inner_table/ob_inner_table_schema.11001_11050.cpp +++ b/src/share/inner_table/ob_inner_table_schema.11001_11050.cpp @@ -15161,6 +15161,36 @@ int ObInnerTableSchema::all_virtual_sys_parameter_stat_schema(ObTableSchema &tab false, //is_nullable false); //is_autoincrement } + + if (OB_SUCC(ret)) { + ADD_COLUMN_SCHEMA("default_value", //column_name + ++column_id, //column_id + 0, //rowkey_id + 0, //index_id + 0, //part_key_pos + ObVarcharType, //column_type + CS_TYPE_INVALID, //column_collation_type + OB_MAX_CONFIG_VALUE_LEN, //column_length + -1, //column_precision + -1, //column_scale + false, //is_nullable + false); //is_autoincrement + } + + if (OB_SUCC(ret)) { + ADD_COLUMN_SCHEMA("isdefault", //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); diff --git a/src/share/inner_table/ob_inner_table_schema.11051_11100.cpp b/src/share/inner_table/ob_inner_table_schema.11051_11100.cpp index 981f65427..07abe9649 100644 --- a/src/share/inner_table/ob_inner_table_schema.11051_11100.cpp +++ b/src/share/inner_table/ob_inner_table_schema.11051_11100.cpp @@ -4276,6 +4276,36 @@ int ObInnerTableSchema::all_virtual_tenant_parameter_stat_schema(ObTableSchema & true, //is_nullable false); //is_autoincrement } + + if (OB_SUCC(ret)) { + ADD_COLUMN_SCHEMA("default_value", //column_name + ++column_id, //column_id + 0, //rowkey_id + 0, //index_id + 0, //part_key_pos + ObVarcharType, //column_type + CS_TYPE_INVALID, //column_collation_type + OB_MAX_CONFIG_VALUE_LEN, //column_length + -1, //column_precision + -1, //column_scale + false, //is_nullable + false); //is_autoincrement + } + + if (OB_SUCC(ret)) { + ADD_COLUMN_SCHEMA("isdefault", //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); diff --git a/src/share/inner_table/ob_inner_table_schema.15001_15050.cpp b/src/share/inner_table/ob_inner_table_schema.15001_15050.cpp index 170226bc7..26e61b6fe 100644 --- a/src/share/inner_table/ob_inner_table_schema.15001_15050.cpp +++ b/src/share/inner_table/ob_inner_table_schema.15001_15050.cpp @@ -5128,6 +5128,36 @@ int ObInnerTableSchema::all_virtual_sys_parameter_stat_agent_schema(ObTableSchem false, //is_nullable false); //is_autoincrement } + + if (OB_SUCC(ret)) { + ADD_COLUMN_SCHEMA("DEFAULT_VALUE", //column_name + ++column_id, //column_id + 0, //rowkey_id + 0, //index_id + 0, //part_key_pos + ObVarcharType, //column_type + CS_TYPE_UTF8MB4_BIN, //column_collation_type + OB_MAX_CONFIG_VALUE_LEN, //column_length + 2, //column_precision + -1, //column_scale + false, //is_nullable + false); //is_autoincrement + } + + if (OB_SUCC(ret)) { + ADD_COLUMN_SCHEMA("ISDEFAULT", //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 + } table_schema.set_index_using_type(USING_HASH); table_schema.set_row_store_type(ENCODING_ROW_STORE); table_schema.set_store_format(OB_STORE_FORMAT_DYNAMIC_MYSQL); diff --git a/src/share/inner_table/ob_inner_table_schema.15051_15100.cpp b/src/share/inner_table/ob_inner_table_schema.15051_15100.cpp index f55b02ee2..92e4685ba 100644 --- a/src/share/inner_table/ob_inner_table_schema.15051_15100.cpp +++ b/src/share/inner_table/ob_inner_table_schema.15051_15100.cpp @@ -1947,6 +1947,36 @@ int ObInnerTableSchema::all_virtual_tenant_parameter_stat_ora_schema(ObTableSche true, //is_nullable false); //is_autoincrement } + + if (OB_SUCC(ret)) { + ADD_COLUMN_SCHEMA("DEFAULT_VALUE", //column_name + ++column_id, //column_id + 0, //rowkey_id + 0, //index_id + 0, //part_key_pos + ObVarcharType, //column_type + CS_TYPE_UTF8MB4_BIN, //column_collation_type + OB_MAX_CONFIG_VALUE_LEN, //column_length + 2, //column_precision + -1, //column_scale + false, //is_nullable + false); //is_autoincrement + } + + if (OB_SUCC(ret)) { + ADD_COLUMN_SCHEMA("ISDEFAULT", //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); diff --git a/src/share/inner_table/ob_inner_table_schema.h b/src/share/inner_table/ob_inner_table_schema.h index e9c280e71..34e04f179 100644 --- a/src/share/inner_table/ob_inner_table_schema.h +++ b/src/share/inner_table/ob_inner_table_schema.h @@ -119,7 +119,9 @@ struct ALL_VIRTUAL_TENANT_PARAMETER_STAT_CDE { SCOPE, SOURCE, EDIT_LEVEL, - TENANT_ID + TENANT_ID, + DEFAULT_VALUE, + ISDEFAULT }; }; @@ -277,7 +279,9 @@ struct ALL_VIRTUAL_TENANT_PARAMETER_STAT_ORA_CDE { SCOPE, SOURCE, EDIT_LEVEL, - TENANT_ID + TENANT_ID, + DEFAULT_VALUE, + ISDEFAULT }; }; diff --git a/src/share/inner_table/ob_inner_table_schema_def.py b/src/share/inner_table/ob_inner_table_schema_def.py index 5bf56f5ef..9e6c3f3bd 100644 --- a/src/share/inner_table/ob_inner_table_schema_def.py +++ b/src/share/inner_table/ob_inner_table_schema_def.py @@ -7701,6 +7701,8 @@ def_table_schema( ('scope', 'varchar:OB_MAX_CONFIG_SCOPE_LEN'), ('source', 'varchar:OB_MAX_CONFIG_SOURCE_LEN'), ('edit_level', 'varchar:OB_MAX_CONFIG_EDIT_LEVEL_LEN'), + ('default_value', 'varchar:OB_MAX_CONFIG_VALUE_LEN'), + ('isdefault', 'int') ], partition_columns = ['svr_ip', 'svr_port'], vtable_route_policy = 'distributed', @@ -8442,7 +8444,9 @@ def_table_schema( ('scope', 'varchar:OB_MAX_CONFIG_SCOPE_LEN'), ('source', 'varchar:OB_MAX_CONFIG_SOURCE_LEN'), ('edit_level', 'varchar:OB_MAX_CONFIG_EDIT_LEVEL_LEN'), - ('tenant_id', 'int', 'true') + ('tenant_id', 'int', 'true'), + ('default_value', 'varchar:OB_MAX_CONFIG_VALUE_LEN'), + ('isdefault', 'int') ], partition_columns = ['svr_ip', 'svr_port'], vtable_route_policy = 'distributed', diff --git a/tools/deploy/mysql_test/test_suite/inner_table/r/mysql/all_virtual_sys_parameter_stat.result b/tools/deploy/mysql_test/test_suite/inner_table/r/mysql/all_virtual_sys_parameter_stat.result index f8bc1e83f..54b999b05 100644 --- a/tools/deploy/mysql_test/test_suite/inner_table/r/mysql/all_virtual_sys_parameter_stat.result +++ b/tools/deploy/mysql_test/test_suite/inner_table/r/mysql/all_virtual_sys_parameter_stat.result @@ -19,6 +19,8 @@ visible_level varchar(64) NO NULL scope varchar(64) NO NULL source varchar(64) NO NULL edit_level varchar(128) NO NULL +default_value varchar(65536) NO NULL +isdefault bigint(20) NO NULL select name from __all_virtual_sys_parameter_stat where name not like "module_test_%" group by name order by name; name all_server_list