记录主表中缺少的 Postgresql 序列值

Log Postgresql sequence value that is missing in main table

提问人:Chânhéng Seang 提问时间:9/22/2022 更新时间:9/22/2022 访问量:53

问:

id 列出现间隙是由于使用 PostgreSQL 上的序列作为表主键的默认值所致。当事务回滚时,序列值不会回滚,因此 id 列将不是顺序的。我试图消除差距,但它似乎影响了性能。我现在想的是记录那些丢失的 ID 以及错误消息和请求有效负载。因此,我很难获取数据库事务回滚时按顺序生成的 ID。

当函数回滚时,请建议从数据库中获取缺少的序列 ID 的方法,以便我们可以记录它。

Spring PostgreSQL spring-boot 休眠 序列

评论

0赞 Community 9/22/2022
请提供足够的代码,以便其他人可以更好地理解或重现问题。
0赞 Belayer 9/23/2022
除非有法律要求,否则最佳做法是接受间隙是完全正常和无害的。继续前进,甚至不要尝试恢复未使用的序列值。

答: 暂无答案