ITPub博客

首页 > 数据库 > 国内数据库 > OceanBase 动态分区自动创建失败?

OceanBase 动态分区自动创建失败?

原创 国内数据库 作者:瑞蓝创_RLC_888 时间:2026-07-03 14:38:48 0 删除 编辑

问题现象

业务部门04-22开启的动态分区,到4-27好像都没有动态创建,表结构如下


CREATE TABLE `tb1` (


  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT  '主键ID',

  `timestamp` timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT  '日志时间戳',

  `created_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT  '创建时间',

  PRIMARY KEY (`id`, `created_time`),

  KEY `idx_timestamp` (`timestamp`) BLOCK_SIZE 16384 LOCAL,

  KEY `idx_created_time` (`created_time`) BLOCK_SIZE 16384 LOCAL,

) ORGANIZATION INDEX AUTO_INCREMENT = 1 AUTO_INCREMENT_MODE =  'ORDER' DEFAULT CHARSET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = DYNAMIC COMPRESSION =  'zstd_1.3.8' REPLICA_NUM = 2 BLOCK_SIZE = 16384 USE_BLOOM_FILTER = FALSE ENABLE_MACRO_BLOCK_BLOOM_FILTER = FALSE TABLET_SIZE = 134217728 PCTFREE = 0 COMMENT =  '应用日志事件表' DYNAMIC_PARTITION_POLICY = (ENABLE = TRUE, TIME_UNIT =  'DAY', PRECREATE_TIME =  '3DAY', EXPIRE_TIME =  '30DAY', TIME_ZONE =  'DEFAULT', BIGINT_PRECISION =  'NONE')

partition by range columns(created_time)

(partition `p20260422` values less than ( '2026-04-22 00:00:00'),

 partition `p20260423` values less than ( '2026-04-23 00:00:00')) WITH COLUMN GROUP(all columns, each column);

关键诊断信息

触发条件

分区命名规则与系统预创建分区规则冲突

事后诊断

通过系统表查看动态分区配置及任务是正常调度的,两个库中问题表table_id为509468、509525


operator@[oceanbase]>SELECT * FROM oceanbase.CDB_OB_DYNAMIC_PARTITION_TABLES 
where TABLE_NAME=
'tb_aaa_BBBB';

+-----------+-----------------+--------------+----------+-----------------------+--------+-----------+----------------+-------------+-----------+------------------+
| TENANT_ID | DATABASE_NAME | TABLE_NAME   | TABLE_ID | MAX_HIGH_BOUND_VAL    | ENABLE | TIME_UNIT | PRECREATE_TIME | EXPIRE_TIME | TIME_ZONE | BIGINT_PRECISION |
+-----------+-----------------+--------------+----------+-----------------------+--------+-----------+----------------+-------------+-----------+------------------+
|      1002 |  dev       | tb_aaa_BBBB |   509468 |  '2026-04-23 00:00:00' | TRUE   | DAY       | 3DAY           | 30DAY       | DEFAULT   | NONE             |
|      1002 |   test      | tb_aaa_BBBB|   509525 |  '2026-04-23 00:00:00' | TRUE   | DAY       | 3DAY           | 30DAY       | DEFAULT   | NONE             |
+-----------+-----------------+--------------+----------+-----------------------+--------+-----------+----------------+-------------+-----------+------------------+
2 rows  in  set (0.144 sec)

operator@[oceanbase]>SELECT JOB_NAME, JOB_ACTION, START_DATE, REPEAT_INTERVAL, ENABLED, NEXT_RUN_DATE, MAX_RUN_DURATION, COMMENTS 

    -> FROM oceanbase.DBA_SCHEDULER_JOBS
    -> WHERE JOB_NAME =  'SCHEDULED_MANAGE_DYNAMIC_PARTITION_DAILY'\G
*************************** 1. row ***************************
        JOB_NAME: SCHEDULED_MANAGE_DYNAMIC_PARTITION_DAILY
      JOB_ACTION: DBMS_PARTITION.MANAGE_DYNAMIC_PARTITION(null,  'DAY,WEEK,MONTH,YEAR')
      START_DATE: 2026-01-08 00:00:00.000000
 REPEAT_INTERVAL: FREQ=DAILY;INTERVAL=1
         ENABLED: 1
   NEXT_RUN_DATE: 2026-04-28 00:00:00.000000
MAX_RUN_DURATION: 3600
        COMMENTS: used to perform manage dynamic partition periodically
1 row  in  set (0.103 sec)

视图 DBA_OB_TENANT_EVENT_HISTORY 中记录当前租户下动态分区管理任务的历史执行情况,包含执行成功和失败的 table id 信息,在 failed_tables 列中可以看到对应的表创建分区失败了


ooperator@[oceanbase]>SELECT

    ->   SVR_IP, TRACE_ID, TIMESTAMP, VALUE1 AS success_tables, VALUE2 AS failed_tables,
    ->   COST_TIME, RET_CODE, ERROR_MSG, TRACE_ID
    -> FROM oceanbase.DBA_OB_TENANT_EVENT_HISTORY
    -> WHERE EVENT =  'MANAGE_DYNAMIC_PARTITION'
    ->   AND VALUE2 IS NOT NULL
    ->   AND VALUE2   '[]'
    -> ORDER BY TIMESTAMP DESC
    -> LIMIT 100;
+----------------+-----------------------------------+----------------------------+----------------+------------------+-----------+----------+-----------+-----------------------------------+
| SVR_IP         | TRACE_ID                          | TIMESTAMP                  | success_tables | failed_tables    | COST_TIME | RET_CODE | ERROR_MSG | TRACE_ID                          |
+----------------+-----------------------------------+----------------------------+----------------+------------------+-----------+----------+-----------+-----------------------------------+
| 10.100.XXX.XX  | YB420A6470E3-000648BFC8ECA114-0-0 | 2026-04-27 00:00:00.063245 | []             | [509468, 509525] |     28939 |        0 | NULL      | YB420A6470E3-000648BFC8ECA114-0-0 |
| 10.100.XXX.XXX | YB420A6470E3-000648BFC8EB949C-0-0 | 2026-04-26 00:00:00.030944 | []             | [509468, 509525] |     16391 |        0 | NULL      | YB420A6470E3-000648BFC8EB949C-0-0 |
| 10.100.XXX.XXX | YB420A6470E3-000648BFC8EA880A-0-0 | 2026-04-25 00:00:00.037074 | []             | [509468, 509525] |     16647 |        0 | NULL      | YB420A6470E3-000648BFC8EA880A-0-0 |
| 10.100.XXX.XXX | YB420A6470E3-000648BFA5FF0566-0-0 | 2026-04-24 00:00:00.033654 | []             | [509468, 509525] |     17362 |        0 | NULL      | YB420A6470E3-000648BFA5FF0566-0-0 |
| 10.100.XXX.XXX | YB420A6470E3-000648BFA5FDF8DA-0-0 | 2026-04-23 00:00:00.070227 | []             | [509468, 509525] |     18756 |        0 | NULL      | YB420A6470E3-000648BFA5FDF8DA-0-0 |
| 10.100.XXX.XX  | YB420A6470E3-000648BFA5FCEC59-0-0 | 2026-04-22 00:00:00.054201 | []             | [509468, 509525] |     37182 |        0 | NULL      | YB420A6470E3-000648BFA5FCEC59-0-0 |
+----------------+-----------------------------------+----------------------------+----------------+------------------+-----------+----------+-----------+-----------------------------------+
6 rows  in  set (0.066 sec)

通过27日最新的traceid排查日志,关键日志如下


grep 
'YB420A6470E3-000648BFC8ECA114-0-0' observer.log.*


WDIAG log_user_error_and_warn (ob_poc_rpc_proxy.cpp:247) [1450955][T1002_L0_G28][T1002][YB420A6470E3-000648BFC8ECA114-0-0] [lt=23][errcode=-5280] Duplicate partition name  'P20260423'
WDIAG [SQL.ENG] alter_table_rpc_v2 (ob_table_executor.cpp:869) [1450955][T1002_L0_G28][T1002][YB420A6470E3-000648BFC8ECA114-0-0] [lt=6][errcode=-5280] rpc proxy alter table failed(ret=-5280, ret= "OB_ERR_SAME_NAME_PARTITION", dst= "10.100.AAA.BBB:CCCC", alter_table_arg={session_id:3223568397, alter_part_type:-1, index_arg_list:[], foreign_key_arg_list:[], alter_table_schema:{alter_type: "OB_INVALID_DDL_OP", origin_table_name: "tb_log_event", new_database_name: "test", origin_database_name: "test", split_partition_name: "", split_high_bound_val:, split_list_row_values:, new_part_name: "", alter_table_schema:{simple_table_schema:{tenant_id:1002, database_id:18446744073709551615, tablegroup_id:18446744073709551615, table_id:509525, association_table_id:18446744073709551615, in_offline_ddl_white_list: false, table_name: "tb_log_event", session_id:0, index_type:0, table_type:3, table_mode:{table_mode_flag:0, pk_mode:0, table_state_flag:0, view_created_method_flag:0, pk_exists:0, auto_increment_mode:0, rowid_mode:0, view_column_filled_flag:0, mv_container_table_flag:0, mv_available_flag:0, table_referenced_by_mv_flag:0, mv_enable_query_rewrite_flag:0, mv_on_query_computation_flag:0, ddl_table_ignore_sync_cdc_flag:0, table_organization_mode:0}, tablespace_id:18446744073709551615, data_table_id:0, name_casemode:-1, schema_version:0, part_level:1, part_option:{part_func_type:4, part_func_expr: "created_time", part_num:7, auto_part: false, auto_part_size:0}, sub_part_option:{part_func_type:0, part_func_expr: "", part_num:1, auto_part: false, auto_part_size:0}, partition_num:7, def_subpartition_num:0, partition_array:[{BasePartition:{tenant_id:18446744073709551615, table_id:18446744073709551615, part_id:-1, name: "P20260423", low_bound_val:, high_bound_val:{ "MYSQL_DATETIME": "2026-04-24 08:00:00.000000"}, list_row_values:{values:[]}, part_idx:-1, is_empty_partition_name: false, tablet_id:{id:0}, external_location: "", split_source_tablet_id:{id:0}, part_storage_cache_policy_type:4}, subpartition_array:null, subpartition_array_capacity:0, hidden_subpartition_array:null, hidden_subpartition_array_capacity:0}, {BasePartition:{tenant_id:18446744073709551615, table_id:18446744073709551615, part_id:-1, name: "P20260424", low_bound_val:, high_bound_val:{ "MYSQL_DATETIME": "2026-04-25 08:00:00.000000"}, list_row_values:{values:[]}, part_idx:-1, is_empty_partition_name: false, tablet_id:{id:0}, external_location: "", split_source_tablet_id:{id:0}, part_storage_cache_policy_type:4}, subpartition_array:null, subpartition_array_capacity:0, hidden_subpartition_array:null, hidden_subpartition_array_capacity:0}, {BasePartition:{tenant_id:18446744073709551615, table_id:18446744073709551615, part_id:-1, name: "P20260425", low_bound_val:, high_bound_val:{ "MYSQL_DATETIME": "2026-04-26 08:00:00.000000"}, list_row_values:{values:[]}, part_idx:-1, is_empty_partition_name: false, tablet_id:{id:0}, external_location: "", split_source_tablet_id:{id:0}, part_storage_cache_policy_type:4}, subpartition_array:null, subpartition_array_capacity:0, hidden_subpartition_array:null, hidden_subpartition_array_capacity:0}, {BasePartition:{tenant_id:18446744073709551615, table_id:18446744073709551615, part_id:-1, name: "P20260426", low_bound_val:, high_bound_val:{ "MYSQL_DATETIME": "2026-04-27 08:00:00.000000"}, list_row_values:{values:[]}, part_idx:-1, is_empty_partition_name: false, tablet_id:{id:0}, external_location: "", split_source_tablet_id:{id:0}, part_storage_cache_policy_type:4}, subpartition_array:null, subpartition_array_capacity:0, hidden_subpartition_array:null, hidden_subpartition_array_capacity:0}, {BasePartition:{tenant_id:18446744073709551615, table_id:18446744073709551615, part_id:-1, name: "P20260427", low_bound_val:, high_bound_val:{ "MYSQL_DATETIME": "2026-04-28 08:00:00.000000"}, list_row_values:{values:[]}, part_idx:-1, is_empty_partition_name: false, tablet_id:{id:0}, external_location: "", split_source_tablet_id:{id:0}, part_storage_cache_policy_type:4}, subpartition_array:null, subpartition_array_capacity:0, hidden_subpartition_array:null, hidden_subpartition_array_capacity:0}, {BasePartition:{tenant_id:18446744073709551615, table_id:18446744073709551615, part_id:-1, name: "P20260428", low_bound_val:, high_bound_val:{ "MYSQL_DATETIME": "2026-04-29 08:00:00.000000"}, list_row_values:{values:[]}, part_idx:-1, is_empty_partition_name: false, tablet_id:{id:0}, external_location: "", split_source_tablet_id:{id:0}, part_storage_cache_policy_type:4}, subpartition_array:null, subpartition_array_capacity:0, hidden_subpartition_array:null, hidden_subpartition_array_capacity:0}, {BasePartition:{tenant_id:18446744073709551615, table_id:18446744073709551615, part_id:-1, name: "P20260429", low_bound_val:, high_bound_val:{ "MYSQL_DATETIME": "2026-04-30 08:00:00.000000"}, list_row_values:{values:[]}, part_idx:-1, is_empty_partition_name: false, tablet_id:{id:0}, external_location: "", split_source_tablet_id:{id:0}, part_storage_cache_policy_type:4}, subpartition_array:null, subpartition_array_capacity:0, hidden_subpartition_array:null, hidden_subpartition_array_capacity:0}], partition_array_capacity:128, def_subpartition_array:null, hidden_partition_array:null, index_status:1, duplicate_scope:0, encryption: "", encrypt_key: "", master_key_id:18446744073709551615, sub_part_template_flags:0, get_tablet_id():{id:0}, max_dependency_version:-1, object_status:1, is_force_view: false, truncate_version:-1, duplicate_read_consistency:0, storage_cache_policy_type:4, with_dynamic_partition_policy: false}, max_used_column_id:0, sess_active_time:0, rowkey_column_num:0, index_column_num:0, rowkey_split_pos:0, block_size:16384, is_use_bloomfilter: false, progressive_merge_num:0, tablet_size:-1, pctfree:10, load_type:0, index_using_type:0, def_type:1, charset_type:0, collation_type:0, index_status:1, partition_status:0, code_version:1, comment: "", pk_comment: "", create_host: "", tablegroup_name: "", compressor_type:1, row_store_type:4, store_format:0, expire_info: "", view_schema:{view_definition: "", check_option: "none", is_updatable: "false", is_materialized: "false", character_set_client:0, collation_connection: "invalid_type"}, autoinc_column_id:0, auto_increment:1, read_only: false, simple_index_infos:[], base_table_ids:[], rowkey_info:{columns:null, capacity:0}, partition_key_info:{columns:null, capacity:0}, column_cnt:0, table_dop:1, constraints:null, column_array:null, aux_vp_tid_array:[], index_info:{columns:null, capacity:0}, define_user_id:18446744073709551615, aux_lob_meta_tid:18446744073709551615, aux_lob_piece_tid:18446744073709551615, name_generated_type:0, lob_inrow_threshold:4096, is_column_store_supported: false, max_used_column_group_id:1000, column_group_cnt:0, column_group_array:null, mlog_tid:18446744073709551615, auto_increment_cache_size:0, local_session_vars:{}, index_params: "", exec_env: "", storage_cache_policy: "", merge_engine_type:0, semistruct_encoding_type:{mode:0, reserved:0}, dynamic_partition_policy: ""}}, alter_constraint_type:1000, nls_formats:[ "YYYY-MM-DD HH24:MI:SS",  "YYYY-MM-DD HH24:MI:SS.FF",  "YYYY-MM-DD HH24:MI:SS.FF TZR TZD"], ddl_task_type:0, compat_mode:0, is_alter_columns: false, is_alter_indexs: false, is_alter_options: false, is_alter_partitions: true, is_inner: false, is_update_global_indexes: false, is_convert_to_character: false, skip_sys_table_check: false, need_rebuild_trigger: false, foreign_key_checks: true, is_add_to_scheduler: false, table_id:-1, hidden_table_id:-1, inner_sql_exec_addr: "0.0.0.0:0", local_session_var:{ type:16, val:{ "VARCHAR": "+08:00", collation: "utf8mb4_general_ci", coercibility: "SYSCONST"},  type:15, val:{ "BIGINT UNSIGNED":4194304},  type:10064, val:{ "VARCHAR": "YYYY-MM-DD HH24:MI:SS", collation: "utf8mb4_general_ci", coercibility: "SYSCONST"},  type:10065, val:{ "VARCHAR": "YYYY-MM-DD HH24:MI:SS.FF", collation: "utf8mb4_general_ci", coercibility: "SYSCONST"},  type:10066, val:{ "VARCHAR": "YYYY-MM-DD HH24:MI:SS.FF TZR TZD", collation: "utf8mb4_general_ci", coercibility: "SYSCONST"},  type:9, val:{ "BIGINT":45},  type:14, val:{ "BIGINT":16777216},  type:10176, val:{ "BIGINT UNSIGNED":17180000512}}, mview_refresh_info:{mview_table_id:18446744073709551615, last_refresh_scn:{val:18446744073709551615, v:3}, refresh_scn:{val:18446744073709551615, v:3}, start_time:-1, is_mview_complete_refresh: false, mview_target_data_sync_scn:{val:18446744073709551615, v:3}, select_sql: ""}, alter_algorithm:2, alter_auto_partition_attr: false, rebuild_index_arg_list:[], client_session_id:4294967295, client_session_create_ts:0, lock_priority:20, is_direct_load_partition: false, is_alter_column_group_delayed: false, is_alter_mview_attributes: false, alter_mview_arg:{exec_env: "", is_alter_on_query_computation: false, enable_on_query_computation: false, is_alter_query_rewrite: false, enable_query_rewrite: false, is_alter_refresh_method: false, refresh_method:4, is_alter_refresh_dop: false, refresh_dop:0, is_alter_refresh_start: false, start_time:{ "NULL": "NULL"}, is_alter_refresh_next: false, next_time_expr: "", is_alter_nested_refresh_mode: false, nested_refresh_mode:3}, is_alter_mlog_attributes: false, alter_mlog_arg:{exec_env: "", is_alter_table_dop: false, table_dop:0, is_alter_purge_start: false, start_time:{ "NULL": "NULL"}, is_alter_purge_next: false, next_time_expr: "", is_alter_lob_threshold: false, lob_threshold:0}, part_storage_cache_policy: "", data_version:0})
WDIAG [SQL.ENG] execute (ob_table_executor.cpp:1197) [1450955][T1002_L0_G28][T1002][YB420A6470E3-000648BFC8ECA114-0-0] [lt=234][errcode=-5280] Failed to alter table rpc v2(ret=-5280)
INFO  [SHARE] add_event (ob_event_history_table_operator.h:266) [1450955][T1002_L0_G28][T1002][YB420A6470E3-000648BFC8ECA114-0-0] [lt=5] event table add task(ret=0, event_table_name= "__all_server_event_history", sql=INSERT INTO __all_server_event_history (gmt_create, module, event, name1, value1, name2, value2, name3, value3, name4, value4, name5, value5, name6, value6, extra_info, svr_ip, svr_port) VALUES (usec_to_time(1777219200062843),  'ddl',  'alter table execute finish',  'tenant_id', 1002,  'ret', -5280,  'trace_id',  'YB420A6470E3-000648BFC8ECA114-0-0',  'task_id', 0,  'table_info',  'table_id:-1, hidden_table_id:-1',  'schema_version', -1,  '"0.0.0.0:0"',  '10.100.113.76', 2882))
INFO  [SQL.ENG] execute (ob_table_executor.cpp:1285) [1450955][T1002_L0_G28][T1002][YB420A6470E3-000648BFC8ECA114-0-0] [lt=6] finish alter table execute.(ret=-5280, ddl_event_info={addr_: "10.100.113.76:2882", event_ts_:1777219200062874, sub_id_:0, trace_id_:YB420A6470E3-000648BFC8ECA114-0-0, parent_trace_id_:YB420A6470E3-000648BFC8ECA114-0-0}, first_stmt=ALTER TABLE ` test`.`tb_log_event` ADD PARTITION (PARTITION `P20260423` VALUES LESS THAN ( '2026-04-24 08:00:00'), PARTITION `P20260424` VALUES LESS THAN ( '2026-04-25 08:00:00'), PARTITION `P20260425` VALUES LESS THAN ( '2026-04-26 08:00:00'), PARTITION `P20260426` VALUES LESS THAN ( '2026-04-27 08:00:00'), PARTITION `P20260427` VALUES LESS THAN ( '2026-04-28 08:00:00'), PARTITION `P20260428` VALUES LESS THAN ( '2026-04-29 08:00:00'), PARTITION `P20260429` VALUES LESS THAN ( '2026-04-30 08:00:00')))
INFO  [SHARE] add_event (ob_event_history_table_operator.h:266) [1450955][T1002_L0_G28][T1002][YB420A6470E3-000648BFC8ECA114-0-0] [lt=9] event table add task(ret=0, event_table_name= "__all_server_event_history", sql=INSERT INTO __all_server_event_history (gmt_create, module, event, name1, value1, name2, value2, name3, value3, name4, value4, value5, value6, svr_ip, svr_port) VALUES (usec_to_time(1777219200062886),  'sql',  'execute_cmd',  'cmd_type', 22,  'sql_text', X '414C544552205441424C452060686F6E676875786979695F74657374602E6074625F6C6F675F6576656E74602041444420504152544954494F4E2028504152544954494F4E2060503230323630343233602056414C554553204C455353205448414E202827323032362D30342D32342030383A30303A303027292C20504152544954494F4E2060503230323630343234602056414C554553204C455353205448414E202827323032362D30342D32352030383A30303A303027292C20504152544954494F4E2060503230323630343235602056414C554553204C455353205448414E202827323032362D30342D32362030383A30303A303027292C20504152544954494F4E2060503230323630343236602056414C554553204C455353205448414E202827323032362D30342D32372030383A30303A303027292C20504152544954494F4E2060503230323630343237602056414C554553204C455353205448414E202827323032362D30342D32382030383A30303A303027292C20504152544954494F4E2060503230323630343238602056414C554553204C455353205448414E202827323032362D30342D32392030383A30303A303027292C20504152544954494F4E2060503230323630343239602056414C554553204C455353205448414E202827323032362D30342D33302030383A30303A3030272929',  'return_code', -5280,  'tenant_id', 1002,  '',  '',  '10.100.TTT.UU', IIII))
WDIAG [SQL] open_cmd (ob_result_set.cpp:96) [1450955][T1002_L0_G28][T1002][YB420A6470E3-000648BFC8ECA114-0-0] [lt=13][errcode=-5280] execute cmd failed(ret=-5280)
WDIAG [SQL] open (ob_result_set.cpp:162) [1450955][T1002_L0_G28][T1002][YB420A6470E3-000648BFC8ECA114-0-0] [lt=5][errcode=-5280] execute plan failed(ret=-5280)
WDIAG [SERVER] open (ob_inner_sql_result.cpp:159) [1450955][T1002_L0_G28][T1002][YB420A6470E3-000648BFC8ECA114-0-0] [lt=4][errcode=-5280] open result  set failed(ret=-5280)
WDIAG [SERVER] do_query (ob_inner_sql_connection.cpp:809) [1450955][T1002_L0_G28][T1002][YB420A6470E3-000648BFC8ECA114-0-0] [lt=4][errcode=-5280] result  set open failed(ret=-5280, executor={ObIExecutor:, sql: "ALTER TABLE `test`.`tb_log_event` ADD PARTITION (PARTITION `P20260423` VALUES LESS THAN ('2026-04-24 08:00:00'), PARTITION `P20260424` VALUES LESS THAN ('2026-04-25 08:00:00'), PARTITION `P20260425` VALUES LESS THAN ('2026-04-26 08:00:00'), PARTITION `P20260426` VALUES LESS THAN ('2026-04-27 08:00:00'), PARTITION `P20260427` VALUES LESS THAN ('2026-04-28 08:00:00'), PARTITION `P20260428` VALUES LESS THAN ('2026-04-29 08:00:00'), PARTITION `P20260429` VALUES LESS THAN ('2026-04-30 08:00:00'))"})
WDIAG [SERVER] query (ob_inner_sql_connection.cpp:954) [1450955][T1002_L0_G28][T1002][YB420A6470E3-000648BFC8ECA114-0-0] [lt=7][errcode=-5280] execute failed(ret=-5280, tenant_id=1002, executor={ObIExecutor:, sql: "ALTER TABLE `test`.`tb_AAA_BBBB` ADD PARTITION (PARTITION `P20260423` VALUES LESS THAN ('2026-04-24 08:00:00'), PARTITION `P20260424` VALUES LESS THAN ('2026-04-25 08:00:00'), PARTITION `P20260425` VALUES LESS THAN ('2026-04-26 08:00:00'), PARTITION `P20260426` VALUES LESS THAN ('2026-04-27 08:00:00'), PARTITION `P20260427` VALUES LESS THAN ('2026-04-28 08:00:00'), PARTITION `P20260428` VALUES LESS THAN ('2026-04-29 08:00:00'), PARTITION `P20260429` VALUES LESS THAN ('2026-04-30 08:00:00'))"}, retry_cnt=0, local_sys_schema_version=1768825725039200, local_tenant_schema_version=1777215054564856)
WDIAG [SERVER] after_func (ob_query_retry_ctrl.cpp:1078) [1450955][T1002_L0_G28][T1002][YB420A6470E3-000648BFC8ECA114-0-0] [lt=8][errcode=-5280] [RETRY] check  if need retry(v={force_local_retry: true, stmt_retry_times:0, local_retry_times:0, err_:-5280, err_: "OB_ERR_SAME_NAME_PARTITION", retry_type:0, client_ret:-5280, is_interrupted_by_outer_query: false}, need_retry= false)
WDIAG [SERVER] inner_close (ob_inner_sql_result.cpp:229) [1450955][T1002_L0_G28][T1002][YB420A6470E3-000648BFC8ECA114-0-0] [lt=10][errcode=-5280] result  set close failed(ret=-5280)
WDIAG [SERVER] force_close (ob_inner_sql_result.cpp:205) [1450955][T1002_L0_G28][T1002][YB420A6470E3-000648BFC8ECA114-0-0] [lt=4][errcode=-5280] result  set close failed(ret=-5280)
WDIAG [SERVER] query (ob_inner_sql_connection.cpp:959) [1450955][T1002_L0_G28][T1002][YB420A6470E3-000648BFC8ECA114-0-0] [lt=4][errcode=-5280] failed to close result(close_ret=-5280, ret=-5280)
WDIAG [SERVER] query (ob_inner_sql_connection.cpp:989) [1450955][T1002_L0_G28][T1002][YB420A6470E3-000648BFC8ECA114-0-0] [lt=5][errcode=-5280] failed to process record(executor={ObIExecutor:, sql: "ALTER TABLE `test`.`tb_log_event` ADD PARTITION (PARTITION `P20260423` VALUES LESS THAN ('2026-04-24 08:00:00'), PARTITION `P20260424` VALUES LESS THAN ('2026-04-25 08:00:00'), PARTITION `P20260425` VALUES LESS THAN ('2026-04-26 08:00:00'), PARTITION `P20260426` VALUES LESS THAN ('2026-04-27 08:00:00'), PARTITION `P20260427` VALUES LESS THAN ('2026-04-28 08:00:00'), PARTITION `P20260428` VALUES LESS THAN ('2026-04-29 08:00:00'), PARTITION `P20260429` VALUES LESS THAN ('2026-04-30 08:00:00'))"}, record_ret=-5280, ret=-5280)
WDIAG [SERVER] query (ob_inner_sql_connection.cpp:1026) [1450955][T1002_L0_G28][T1002][YB420A6470E3-000648BFC8ECA114-0-0] [lt=11][errcode=-5280] failed to process final(executor={ObIExecutor:, sql: "ALTER TABLE `test`.`tb_log_event` ADD PARTITION (PARTITION `P20260423` VALUES LESS THAN ('2026-04-24 08:00:00'), PARTITION `P20260424` VALUES LESS THAN ('2026-04-25 08:00:00'), PARTITION `P20260425` VALUES LESS THAN ('2026-04-26 08:00:00'), PARTITION `P20260426` VALUES LESS THAN ('2026-04-27 08:00:00'), PARTITION `P20260427` VALUES LESS THAN ('2026-04-28 08:00:00'), PARTITION `P20260428` VALUES LESS THAN ('2026-04-29 08:00:00'), PARTITION `P20260429` VALUES LESS THAN ('2026-04-30 08:00:00'))"}, aret=-5280, ret=-5280)
WDIAG [SERVER] execute_write_inner (ob_inner_sql_connection.cpp:1626) [1450955][T1002_L0_G28][T1002][YB420A6470E3-000648BFC8ECA114-0-0] [lt=6][errcode=-5280] execute sql failed(ret=-5280, tenant_id=1002, sql=ALTER TABLE ` test`.`tb_AAA_BBBB` ADD PARTITION (PARTITION `P20260423` VALUES LESS THAN ( '2026-04-24 08:00:00'), PARTITION `P20260424` VALUES LESS THAN ( '2026-04-25 08:00:00'), PARTITION `P20260425` VALUES LESS THAN ( '2026-04-26 08:00:00'), PARTITION `P20260426` VALUES LESS THAN ( '2026-04-27 08:00:00'), PARTITION `P20260427` VALUES LESS THAN ( '2026-04-28 08:00:00'), PARTITION `P20260428` VALUES LESS THAN ( '2026-04-29 08:00:00'), PARTITION `P20260429` VALUES LESS THAN ( '2026-04-30 08:00:00')))
WDIAG [SERVER] retry_while_no_tenant_resource (ob_inner_sql_connection.cpp:1087) [1450955][T1002_L0_G28][T1002][YB420A6470E3-000648BFC8ECA114-0-0] [lt=12][errcode=-5280] retry_while_no_tenant_resource failed(ret=-5280, tenant_id=1002)
WDIAG [SERVER] execute_write (ob_inner_sql_connection.cpp:1579) [1450955][T1002_L0_G28][T1002][YB420A6470E3-000648BFC8ECA114-0-0] [lt=10][errcode=-5280] execute_write failed(ret=-5280, tenant_id=1002, sql=ALTER TABLE ` test`.`tb_log_event` ADD PARTITION (PARTITION `P20260423` VALUES LESS THAN ( '2026-04-24 08:00:00'), PARTITION `P20260424` VALUES LESS THAN ( '2026-04-25 08:00:00'), PARTITION `P20260425` VALUES LESS THAN ( '2026-04-26 08:00:00'), PARTITION `P20260426` VALUES LESS THAN ( '2026-04-27 08:00:00'), PARTITION `P20260427` VALUES LESS THAN ( '2026-04-28 08:00:00'), PARTITION `P20260428` VALUES LESS THAN ( '2026-04-29 08:00:00'), PARTITION `P20260429` VALUES LESS THAN ( '2026-04-30 08:00:00')), is_user_sql= false)
WDIAG [COMMON.MYSQLP] write (ob_mysql_proxy.cpp:246) [1450955][T1002_L0_G28][T1002][YB420A6470E3-000648BFC8ECA114-0-0] [lt=5][errcode=-5280] execute sql failed(ret=-5280, tenant_id=1002, conn=0x7fd8f357d430, start=1777219200053903, sql=ALTER TABLE ` test`.`tb_log_event` ADD PARTITION (PARTITION `P20260423` VALUES LESS THAN ( '2026-04-24 08:00:00'), PARTITION `P20260424` VALUES LESS THAN ( '2026-04-25 08:00:00'), PARTITION `P20260425` VALUES LESS THAN ( '2026-04-26 08:00:00'), PARTITION `P20260426` VALUES LESS THAN ( '2026-04-27 08:00:00'), PARTITION `P20260427` VALUES LESS THAN ( '2026-04-28 08:00:00'), PARTITION `P20260428` VALUES LESS THAN ( '2026-04-29 08:00:00'), PARTITION `P20260429` VALUES LESS THAN ( '2026-04-30 08:00:00')))
WDIAG [SHARE] write_ddl_ (ob_dynamic_partition_manager.cpp:182) [1450955][T1002_L0_G28][T1002][YB420A6470E3-000648BFC8ECA114-0-0] [lt=8][errcode=-5280] fail to execute dynamic partition ddl(ret=-5280, ret= "OB_ERR_SAME_NAME_PARTITION", tenant_id=1002, ddl=ALTER TABLE ` test`.`tb_AAA_BBBB` ADD PARTITION (PARTITION `P20260423` VALUES LESS THAN ( '2026-04-24 08:00:00'), PARTITION `P20260424` VALUES LESS THAN ( '2026-04-25 08:00:00'), PARTITION `P20260425` VALUES LESS THAN ( '2026-04-26 08:00:00'), PARTITION `P20260426` VALUES LESS THAN ( '2026-04-27 08:00:00'), PARTITION `P20260427` VALUES LESS THAN ( '2026-04-28 08:00:00'), PARTITION `P20260428` VALUES LESS THAN ( '2026-04-29 08:00:00'), PARTITION `P20260429` VALUES LESS THAN ( '2026-04-30 08:00:00')))
WDIAG [SHARE] add_dynamic_partition_ (ob_dynamic_partition_manager.cpp:135) [1450955][T1002_L0_G28][T1002][YB420A6470E3-000648BFC8ECA114-0-0] [lt=28][errcode=-5280] fail to write ddl(ret=-5280, ret= "OB_ERR_SAME_NAME_PARTITION", sql=ALTER TABLE ` test`.`tb_log_event` ADD PARTITION (PARTITION `P20260423` VALUES LESS THAN ( '2026-04-24 08:00:00'), PARTITION `P20260424` VALUES LESS THAN ( '2026-04-25 08:00:00'), PARTITION `P20260425` VALUES LESS THAN ( '2026-04-26 08:00:00'), PARTITION `P20260426` VALUES LESS THAN ( '2026-04-27 08:00:00'), PARTITION `P20260427` VALUES LESS THAN ( '2026-04-28 08:00:00'), PARTITION `P20260428` VALUES LESS THAN ( '2026-04-29 08:00:00'), PARTITION `P20260429` VALUES LESS THAN ( '2026-04-30 08:00:00')))
WDIAG [SHARE] execute (ob_dynamic_partition_manager.cpp:84) [1450955][T1002_L0_G28][T1002][YB420A6470E3-000648BFC8ECA114-0-0] [lt=15][errcode=-5280] fail to add table dynamic partitions(ret=-5280, ret= "OB_ERR_SAME_NAME_PARTITION", specified_precreate_time=)
WDIAG [PL] manage_dynamic_partition (ob_dbms_partition.cpp:119) [1450955][T1002_L0_G28][T1002][YB420A6470E3-000648BFC8ECA114-0-0] [lt=5][errcode=0] fail to execute dynamic partition manage(tmp_ret=-5280, tmp_ret= "OB_ERR_SAME_NAME_PARTITION", precreate_time_str=, time_unit_strs=[ "DAY",  "WEEK",  "MONTH",  "YEAR"])
INFO  [SHARE] async_add_tenant_event (ob_event_history_table_operator.h:396) [1450955][T1002_L0_G28][T1002][YB420A6470E3-000648BFC8ECA114-0-0] [lt=14] event table async add event success(ret=0, ret= "OB_SUCCESS", event_table_name= "__all_tenant_event_history", sql=INSERT INTO __all_tenant_event_history (gmt_create, module, event, tenant_id, ret_code, cost_time, name1, value1, name2, value2, value3, value4, value5, value6, svr_ip, svr_port, trace_id) VALUES (usec_to_time(1777219200063245),  'DBMS_PARTITION',  'MANAGE_DYNAMIC_PARTITION', 1002, 0, 28939,  'SUCCESS_TABLE_ID_LIST',  '[]',  'FAILED_TABLE_ID_LIST',  '[509468, 509525]',  '',  '',  '',  '',  '10.100.113.76', 2882,  'YB420A6470E3-000648BFC8ECA114-0-0'), tenant_id=1002, exec_tenant_id=1001)
INFO  [PL] manage_dynamic_partition (ob_dbms_partition.cpp:136) [1450955][T1002_L0_G28][T1002][YB420A6470E3-000648BFC8ECA114-0-0] [lt=45] [DYNAMIC_PARTITION] end manage dynamic partition(ret=0, ret= "OB_SUCCESS")

可以看到日志中明确提示: Duplicate partition name 'P20260423',并且执行新增分区的SQL失败

问题原因

由于分区命名冲突导致动态分区调度任务失败,所以分区未创建成功,系统动态分区的命名规则如下:

也就是2026-04-23 00:00:00 ->p20260422,但是命名是2026-04-23 00:00:00 ->p20260423 这就导致系统在创建p20260423(对应2026-04-24 00:00:00)发现已有这个分区。

问题的风险及影响

动态分区创建失败

解决方法

  1. 先禁用定时分区管理任务

CALL DBMS_SCHEDULER.DISABLE(
'SCHEDULED_MANAGE_DYNAMIC_PARTITION_DAILY');


  1. 调整分区

ALTER TABLE tb_aaa_BBBB

DROP PARTITION p20260422,p20260423;
ALTER TABLE tb_aaa_BBBB

ADD PARTITION (
 PARTITION `p20260421` VALUES LESS THAN ( '2026-04-22 00:00:00'),
 PARTITION `p20260422` VALUES LESS THAN ( '2026-04-23 00:00:00'),
 PARTITION `p20260423` VALUES LESS THAN ( '2026-04-24 00:00:00'),
 PARTITION `p20260424` VALUES LESS THAN ( '2026-04-25 00:00:00'),
 PARTITION `p20260425` VALUES LESS THAN ( '2026-04-26 00:00:00'),
 PARTITION `p20260426` VALUES LESS THAN ( '2026-04-27 00:00:00'),
 PARTITION `p20260427` VALUES LESS THAN ( '2026-04-28 00:00:00'),
 PARTITION `p20260428` VALUES LESS THAN ( '2026-04-29 00:00:00'),
 PARTITION `p20260429` VALUES LESS THAN ( '2026-04-30 00:00:00')
);
  1. 启用定时分区管理任务

CALL DBMS_SCHEDULER.ENABLE(
'SCHEDULED_MANAGE_DYNAMIC_PARTITION_DAILY');


  1. 等待每日动态分区管理任务调度或手动触发一次任务,观察任务还会不会报错

CALL DBMS_PARTITION.MANAGE_DYNAMIC_PARTITION(NULL, 
'day');


规避方式

将分区命名规则与系统预创建分区规则对齐

如果在操作过程中遇到问题,欢迎在评论区留言交流,后续我们会持续分享更多实战运维干货,记得 关注不迷路,下次见~

暂无图片


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70047467/viewspace-3175175/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
专注于企业信息科技战略咨询、数据中心规划及运维、智能化软件产品研发,致力于为金融、能源、电信、制造等行业提供智能的业务永续及流程自动化解决方案。

注册时间:2025-09-08

  • 博文量
    89
  • 访问量
    86746