【 使用环境 】生产环境
【 OB or 其他组件 】4.2.5.1
【 使用版本 】社区版
【问题描述】业务插入600条数据后,发先主键id跳变值过大,感觉不太正常。目前跳变值过大担心超过bigint取值范围
【复现路径】
【附件及日志】表类型为order,auto_increment_cache_size为1000000
【备注】基于 LLM 和开源文档 RAG 的论坛小助手已开放测试,在发帖时输入 [@论坛小助手] 即可召唤小助手,欢迎试用!
【 使用环境 】生产环境
【 OB or 其他组件 】4.2.5.1
【 使用版本 】社区版
【问题描述】业务插入600条数据后,发先主键id跳变值过大,感觉不太正常。目前跳变值过大担心超过bigint取值范围
【复现路径】
【附件及日志】表类型为order,auto_increment_cache_size为1000000
【备注】基于 LLM 和开源文档 RAG 的论坛小助手已开放测试,在发帖时输入 [@论坛小助手] 即可召唤小助手,欢迎试用!
用户问题简述: “在 OceanBase 4.2.5.1 社区版中,主键 ID 在生产环境中一次性跳变过大,已经超过了 bigint 的取值范围。表类型为 order,当前 auto_increment_cache_size 设置为 1000000。”
由于您遇到的是关于主键 ID 跳变和超出 bigint 范围的问题,这通常涉及到数据库的自动增长机制和表结构设计,但根据提供的 obdiag 功能列表,此问题场景并不直接包含在可采集或分析的场景中。不过,可以使用 observer.base
场景来收集集群的基础信息,这些信息可能有助于分析主键 ID 的异常增长问题。
日志采集场景: 集群基础信息
日志采集命令: obdiag gather scene run --scene=observer.base
推荐您执行上述日志采集命令,然后将生成的日志文件发送给我们,以便我们进一步分析您的问题。同时,请提供以下额外信息:
auto_increment_cache_size
参数的设置?通过上述信息,我们将能够更好地理解问题发生的背景,并提供针对性的解决方案。感谢您的配合!
附上敏捷诊断工具 obdiag 使用帮助链接
这个应该得找官方了
问题时段是否有过切主,或者修改primary zone操作
这个汲取你是单zone ,没有切主
通过GV$OB_SQL_AUDIT确认一下该insert语句的trace id,然后通过一份相关的observer日志。相关表的建表sql和执行的sql文本都提供一下
是不是手动insert了一个id进去
AUTO_INCREMENT = xxxxxxxxxxxxxx
CREATE TABLE `inv_conf_co_subj_class` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
`line_ver_num` bigint(20) DEFAULT NULL COMMENT '行版本号',
`co_code` varchar(255) DEFAULT NULL COMMENT '公司代码',
`ledger_subj` varchar(255) DEFAULT NULL COMMENT '总账科目',
`short_txt` varchar(255) DEFAULT NULL COMMENT '短文本',
`subj_clas` varchar(255) DEFAULT NULL COMMENT '科目分类',
`inv_type` varchar(255) DEFAULT NULL COMMENT '存货分类',
`inv_type_kfd` varchar(255) DEFAULT NULL COMMENT '存货分类(kfd基准)',
`is_system_makeup` tinyint(4) NOT NULL DEFAULT '0' COMMENT '是否系统补差',
`created_by` bigint(20) DEFAULT NULL COMMENT '创建人',
`creation_date` datetime DEFAULT NULL COMMENT '创建时间',
`last_updated_by` bigint(20) DEFAULT NULL COMMENT '修改人',
`last_update_date` datetime DEFAULT NULL COMMENT '修改时间',
`object_version_number` bigint(20) NOT NULL DEFAULT '1' COMMENT '行版本号,用来处理锁',
`ssot_date` timestamp NULL DEFAULT NULL COMMENT '数据更新时间',
`version` varchar(255) DEFAULT NULL COMMENT '版本',
`version_num` varchar(255) DEFAULT NULL COMMENT '版本号',
`last_upd_plp` varchar(100) DEFAULT NULL COMMENT '维护人',
PRIMARY KEY (`id`)
) AUTO_INCREMENT = 1 DEFAULT CHARSET = utf8mb4 ROW_FORMAT = DYNAMIC COMMENT = '公司科目分类配置表'
没有
这是目前状态的,不是建表时候
老师,我们发出来了,您看一下,审计视图刷没了
1、没有超过 bigint 的范围。
2、麻烦在用户租户下查一下sql将对应的结果或者附件提供一下。
select * from __all_ddl_operation where table_id=(
select table_id from __all_virtual_table where table_name='inv_conf_co_subj_class');
查询下这个表 __all_rootservice_event_history 插入前是否触发什么任务了
没有
公司限制了,没法上传附件,我 粘贴出来。
gmt_create gmt_modified schema_version tenant_id user_id database_id database_name tablegroup_id table_id table_name operation_type ddl_stmt_str exec_tenant_id
2024-10-16 18:33:20.545764 2024-10-16 18:33:20.545764 1729074800530176 0 0 500002 -1 500505 4 "/* ApplicationName=DBeaver 22.2.0 - SQLEditor <Script.sql> */ Create table if not exists inv_conf_co_subj_class (
id bigint(20) not null auto_increment comment '主键',
line_ver_num bigint comment '行版本号',
co_code varchar(255) comment '公司代码',
ledger_subj varchar(255) comment '总账科目',
short_txt varchar(255) comment '短文本',
subj_clas varchar(255) comment '科目分类',
inv_type varchar(255) comment '存货分类',
inv_type_kfd varchar(255) comment '存货分类(kfd基准)',
created_by bigint comment '创建人',
creation_date datetime comment '创建时间',
last_updated_by bigint comment '修改人',
last_update_date datetime comment '修改时间',
object_version_number bigint(20) not null default '1' comment '行版本号,用来处理锁',
ssot_date timestamp comment '数据更新时间',
version varchar(255) comment '版本',
version_num varchar(255) comment '版本号',
primary key (id)
)
Comment '公司科目分类配置表'" 1068
2024-11-12 19:03:03.652897 2024-11-12 19:03:03.652897 1731409383647680 0 0 500002 -1 500505 5 1068
2024-11-12 19:03:03.676992 2024-11-12 19:03:03.676992 1731409383659600 0 0 500002 -1 500505 3 1068
2024-11-12 19:03:03.685413 2024-11-12 19:03:03.685413 1731409383680560 0 0 500002 -1 500505 3 /* ApplicationName=DBeaver 22.2.0 - Main */ ALTER TABLE repboost.inv_conf_co_subj_class ADD last_upd_plp varchar(100) NULL COMMENT '维护人' 1068
2025-03-05 18:33:18.883455 2025-03-05 18:33:18.883455 1741170798865944 0 0 500002 -1 500505 59 /* ApplicationName=DBeaver 22.2.0 - Main */ TRUNCATE TABLE repboost.inv_conf_co_subj_class 1068
2025-03-05 18:33:18.887675 2025-03-05 18:33:18.887675 1741170798865952 0 0 500002 -1 500505 50 1068
2025-03-05 18:33:24.287135 2025-03-05 18:33:24.287135 1741170804263736 0 0 500002 -1 500505 59 /* ApplicationName=DBeaver 22.2.0 - Main */ TRUNCATE TABLE repboost.inv_conf_co_subj_class 1068
2025-03-05 18:33:24.289244 2025-03-05 18:33:24.289244 1741170804263744 0 0 500002 -1 500505 50 1068
2025-04-10 16:06:33.707557 2025-04-10 16:06:33.707557 1744272393690800 0 0 500993 -1 500997 4 "create table `inv_conf_co_subj_class` (
`id` bigint(20) not null auto_increment comment '主键',
`line_ver_num` bigint(20) comment '行版本号',
`co_code` varchar(255) comment '公司代码',
`ledger_subj` varchar(255) comment '总账科目',
`short_txt` varchar(255) comment '短文本',
`subj_clas` varchar(255) comment '科目分类',
`inv_type` varchar(255) comment '存货分类',
`inv_type_kfd` varchar(255) comment '存货分类(kfd基准)',
`created_by` bigint(20) comment '创建人',
`creation_date` datetime comment '创建时间',
`last_updated_by` bigint(20) comment '修改人',
`last_update_date` datetime comment '修改时间',
`object_version_number` bigint(20) not null default '1' comment '行版本号,用来处理锁',
`ssot_date` timestamp comment '数据更新时间',
`version` varchar(255) comment '版本',
`version_num` varchar(255) comment '版本号',
`last_upd_plp` varchar(100) comment '维护人',
primary key (`id`)
)
default charset=utf8mb4
default collate=utf8mb4_general_ci
comment='公司科目分类配置表'" 1068
2025-04-11 14:27:28.038359 2025-04-11 14:27:28.038359 1744352848017304 0 0 500002 -1 500505 59 "truncate table inv_conf_co_subj_class ;" 1068
2025-04-11 14:27:28.041529 2025-04-11 14:27:28.041529 1744352848017312 0 0 500002 -1 500505 50 1068
2025-05-14 14:35:40.668107 2025-05-14 14:35:40.668107 1747204540656352 0 0 500002 -1 500505 25 1068
2025-05-14 14:40:57.171575 2025-05-14 14:40:57.171575 1747204857152112 0 0 501082 -1 501180 4 "create table `inv_conf_co_subj_class` (
`id` bigint(20) not null auto_increment comment '主键',
`line_ver_num` bigint(20) comment '行版本号',
`co_code` varchar(255) comment '公司代码',
`ledger_subj` varchar(255) comment '总账科目',
`short_txt` varchar(255) comment '短文本',
`subj_clas` varchar(255) comment '科目分类',
`inv_type` varchar(255) comment '存货分类',
`inv_type_kfd` varchar(255) comment '存货分类(kfd基准)',
`created_by` bigint(20) comment '创建人',
`creation_date` datetime comment '创建时间',
`last_updated_by` bigint(20) comment '修改人',
`last_update_date` datetime comment '修改时间',
`object_version_number` bigint(20) not null default '1' comment '行版本号,用来处理锁',
`ssot_date` timestamp null comment '数据更新时间',
`version` varchar(255) comment '版本',
`version_num` varchar(255) comment '版本号',
`last_upd_plp` varchar(100) comment '维护人',
primary key (`id`)
)
default charset=utf8mb4
default collate=utf8mb4_general_ci
comment='公司科目分类配置表'" 1068
2025-06-09 13:53:20.433538 2025-06-09 13:53:20.433538 1749448400418328 0 0 501082 -1 501180 8 1068
2025-06-09 13:53:20.440808 2025-06-09 13:53:20.440808 1749448400436896 0 0 501082 -1 501180 5 1068
2025-06-09 13:53:20.494665 2025-06-09 13:53:20.494665 1749448400460968 0 0 501082 -1 501180 3 1068
2025-06-09 13:53:20.508374 2025-06-09 13:53:20.508374 1749448400502024 0 0 501082 -1 501180 3 /* ApplicationName=DBeaver 22.2.0 - SQLEditor <Script-7.sql> */ ALTER TABLE inv_conf_co_subj_class ADD COLUMN is_system_makeup tinyint default 0 NOT NULL COMMENT '是否系统补差' AFTER inv_type_kfd 1068
2025-07-18 15:43:01.348695 2025-07-18 15:43:01.348695 1752824581248408 0 0 501082 -1 501180 3 1068
2025-07-18 15:43:01.421368 2025-07-18 15:43:01.421368 1752824581410224 0 0 501082 -1 501180 3 /* ApplicationName=DBeaver 7.0.4 - SQLEditor <Script-13.sql> */ ALTER TABLE inv_conf_co_subj_class AUTO_INCREMENT = 59469 1068
2025-07-18 15:48:16.836582 2025-07-18 15:48:16.836582 1752824896833680 0 0 501082 -1 501180 3 1068
2025-07-18 15:48:16.873458 2025-07-18 15:48:16.873458 1752824896870048 0 0 501082 -1 501180 3 /* ApplicationName=DBeaver 7.0.4 - SQLEditor <Script-13.sql> */ ALTER TABLE inv_conf_co_subj_class AUTO_INCREMENT = 59469 1068
2025-07-18 15:49:02.09013 2025-07-18 15:49:02.09013 1752824942088656 0 0 501082 -1 501180 3 1068
2025-07-18 15:49:02.126951 2025-07-18 15:49:02.126951 1752824942122424 0 0 501082 -1 501180 3 /* ApplicationName=DBeaver 7.0.4 - SQLEditor <Script-13.sql> */ ALTER TABLE inv_conf_co_subj_class AUTO_INCREMENT = 59469 1068
2025-07-18 16:02:40.865872 2025-07-18 16:02:40.865872 1752825760864152 0 0 501082 -1 501180 3 1068
2025-07-18 16:02:40.897379 2025-07-18 16:02:40.897379 1752825760894520 0 0 501082 -1 501180 3 /* ApplicationName=DBeaver 7.0.4 - SQLEditor <Script-13.sql> */ ALTER TABLE inv_conf_co_subj_class AUTO_INCREMENT = 59469 1068
2025-07-18 16:02:51.542605 2025-07-18 16:02:51.542605 1752825771539288 0 0 501082 -1 501180 3 1068
2025-07-18 16:02:51.575224 2025-07-18 16:02:51.575224 1752825771569736 0 0 501082 -1 501180 3 /* ApplicationName=DBeaver 7.0.4 - SQLEditor <Script-13.sql> */ ALTER TABLE inv_conf_co_subj_class AUTO_INCREMENT = 59469 1068
2025-07-18 16:03:09.376999 2025-07-18 16:03:09.376999 1752825789373640 0 0 501082 -1 501180 3 1068
2025-07-18 16:03:09.420217 2025-07-18 16:03:09.420217 1752825789417016 0 0 501082 -1 501180 3 /* ApplicationName=DBeaver 7.0.4 - SQLEditor <Script-13.sql> */ ALTER TABLE inv_conf_co_subj_class AUTO_INCREMENT = 59469 1068
2025-07-18 16:04:02.30839 2025-07-18 16:04:02.30839 1752825842304816 0 0 501082 -1 501180 3 1068
2025-07-18 16:04:02.338924 2025-07-18 16:04:02.338924 1752825842337344 0 0 501082 -1 501180 3 /* ApplicationName=DBeaver 7.0.4 - SQLEditor <Script-13.sql> */ ALTER TABLE inv_conf_co_subj_class AUTO_INCREMENT = 59469 1068
2025-07-18 16:04:19.725802 2025-07-18 16:04:19.725802 1752825859720144 0 0 501082 -1 501180 3 1068
2025-07-18 16:04:19.764655 2025-07-18 16:04:19.764655 1752825859761848 0 0 501082 -1 501180 3 /* ApplicationName=DBeaver 7.0.4 - SQLEditor <Script-13.sql> */ ALTER TABLE inv_conf_co_subj_class AUTO_INCREMENT = 59470 1068
2025-07-18 16:05:03.764017 2025-07-18 16:05:03.764017 1752825903761680 0 0 501082 -1 501180 3 1068
2025-07-18 16:05:03.810524 2025-07-18 16:05:03.810524 1752825903806360 0 0 501082 -1 501180 3 /* ApplicationName=DBeaver 7.0.4 - SQLEditor <Script-13.sql> */ ALTER TABLE inv_conf_co_subj_class AUTO_INCREMENT = 59500 1068
2025-07-18 16:16:54.698815 2025-07-18 16:16:54.698815 1752826614694152 0 0 501082 -1 501180 3 1068
2025-07-18 16:16:54.736731 2025-07-18 16:16:54.736731 1752826614734368 0 0 501082 -1 501180 3 /* ApplicationName=DBeaver 7.0.4 - SQLEditor <Script-13.sql> */ ALTER TABLE inv_conf_co_subj_class AUTO_INCREMENT = 59500 1068
2025-07-18 16:17:27.261164 2025-07-18 16:17:27.261164 1752826647260176 0 0 501082 -1 501180 3 1068
2025-07-18 16:17:27.297953 2025-07-18 16:17:27.297953 1752826647294072 0 0 501082 -1 501180 3 /* ApplicationName=DBeaver 7.0.4 - SQLEditor <Script-13.sql> */ ALTER TABLE inv_conf_co_subj_class AUTO_INCREMENT = 59500 1068
2025-07-18 16:19:10.618024 2025-07-18 16:19:10.618024 1752826750614504 0 0 501082 -1 501180 3 1068
2025-07-18 16:19:10.653865 2025-07-18 16:19:10.653865 1752826750649456 0 0 501082 -1 501180 3 /* ApplicationName=DBeaver 7.0.4 - SQLEditor <Script-13.sql> */ ALTER TABLE inv_conf_co_subj_class AUTO_INCREMENT = 59500 1068
2025-07-18 16:24:48.573294 2025-07-18 16:24:48.573294 1752827088569072 0 0 501082 -1 501180 3 1068
2025-07-18 16:24:48.611134 2025-07-18 16:24:48.611134 1752827088607368 0 0 501082 -1 501180 3 /* ApplicationName=DBeaver 7.0.4 - SQLEditor <Script-13.sql> */ ALTER TABLE inv_conf_co_subj_class AUTO_INCREMENT = 59500 1068
2025-07-18 16:30:40.747832 2025-07-18 16:30:40.747832 1752827440743296 0 0 501082 -1 501180 3 1068
2025-07-18 16:30:40.783607 2025-07-18 16:30:40.783607 1752827440781536 0 0 501082 -1 501180 3 /* ApplicationName=DBeaver 7.0.4 - SQLEditor <Script-13.sql> */ ALTER TABLE inv_conf_co_subj_class AUTO_INCREMENT = 59500 1068
2025-07-18 16:35:14.34025 2025-07-18 16:35:14.34025 1752827714339272 0 0 501082 -1 501180 3 1068
2025-07-18 16:35:14.377108 2025-07-18 16:35:14.377108 1752827714374776 0 0 501082 -1 501180 3 /* ApplicationName=DBeaver 7.0.4 - SQLEditor <Script-13.sql> */ ALTER TABLE inv_conf_co_subj_class AUTO_INCREMENT = 59500 1068
2025-07-18 16:45:08.952899 2025-07-18 16:45:08.952899 1752828308950304 0 0 501082 -1 501180 3 1068
2025-07-18 16:45:09.00654 2025-07-18 16:45:09.00654 1752828308998704 0 0 501082 -1 501180 3 /* ApplicationName=DBeaver 7.0.4 - SQLEditor <Script-13.sql> */ ALTER TABLE inv_conf_co_subj_class AUTO_INCREMENT = 59500 1068
2025-07-18 16:48:04.523585 2025-07-18 16:48:04.523585 1752828484520768 0 0 501082 -1 501180 3 1068
2025-07-18 16:48:04.562579 2025-07-18 16:48:04.562579 1752828484558384 0 0 501082 -1 501180 3 /* ApplicationName=DBeaver 7.0.4 - SQLEditor <Script-13.sql> */ ALTER TABLE inv_conf_co_subj_class AUTO_INCREMENT = 59500 1068
再这样确认一下
select gmt_create,ddl_stmt_str from __all_ddl_operation
where table_id=(
select table_id from __all_virtual_table where table_name='inv_conf_co_subj_class')
and ddl_stmt_str like '%auto_increment%'
order by gmt_create desc limit 10;
select * from dba_ob_servers order by zone;