我有一张桌子,其中id是主键和顺序。 在交易中,我叫序列
select NEXTVAL(next_cons_id) as next_cons_id
然后创建一条新记录,其中字段ID = next_cons_id从下面的代码获取。
DDL序列
CREATE SEQUENCE IF NOT EXISTS next_cons_id START WITH 1;
在大多数情况下,它运行良好。 做完一个小研究后,我发现了一些模式。
Id, ... gap ..., nextId
606401,605557,
604556,605401,
603555,604401,
602594,603401,
601594,602401
带有日期的ID:
601594 2019-10-10 00:04:54
602401 2019-10-10 01:36:33
602594 2019-10-10 21:46:43
603401 2019-10-11 01:19:49
603555 2019-10-11 21:41:26
604401 2019-10-12 00:30:09
604556 2019-10-13 00:15:32
605401 2019-10-13 03:51:42
605557 2019-10-13 22:42:22
606401 2019-10-14 02:14:28
在我创建完控制台脚本后,每秒可以在测试表中插入一条记录:
237343 2019-10-14 00:31:03 2019-10-14 00:31:03
237344 2019-10-14 00:31:03 2019-10-14 00:31:03
....gap...
238000 2019-10-14 00:31:04 2019-10-14 00:31:04
该表仅使用测试脚本。
在监视zabbix事务回滚时未找到。
数据库有一个复制服务器。
服务器版本:10.3.13
您有任何解决办法吗?
UPD:
我删除序列并重新创建该表
id primary key autouncrement
,但这种情况已经重复。