填坑指南:一次通过Oracle序列自增解决业务编号唯一的并发问题
背景描述某日生产上突然出现应用无法连接数据库,c3p0错误connect time out,重启应用后依然不见好转,经DBA检查发现存在对某张表的for update,以及其他业务操作对该表的update操作,此前该功能已经运行多日,未发现异常。 代码检查 这里先贴一段代码,由于代码是在前任挖坑离职后,我后面接过来的,大家自行体会。这段代码目的是先锁住整表,然后查出主键的maxvalue,然后根据规则对maxvalue进行+1 ,然后进行insert操作,在没请求量,不对表做update
原创
2020-05-30 15:26:42 ·
3743 阅读 ·
0 评论