# 一个关于并发更新的事务以及隔离级的问题

更多描述

当多并发场景下有以下事务执行 (计数器自增),会出现什么问题

begin;

-- select count from counter;

update counter set count = count + 1 where id = 1;

commit;

Issue

欢迎在 Issue 中交流与讨论: Issue 234

Author

回答者: shfshanyue

如果在 pg 下:

如果隔离级为 RC,则多个事务在更新同一行时,会受到阻塞 (Row Lock) 如果隔离级为 RR,则多个事务在更新同一行时,会报错

could not serialize access due to concurrent update

mysql 未测试

扫码关注公众号全栈成长之路,并发送

即可在关注期间无限制浏览本站全部文章内容

你也可以在文章关于回复公众号扫码解锁全站的技术实现中获得解锁代码,永久解锁本站全部文章

Last Updated: 3/14/2020, 2:09:21 PM