在PostgreSQL中处理竞争条件

在PostgreSQL中处理竞争条件,第1张

在PostgreSQL中处理竞争条件

您必须关心事务隔离级别。应将其设置为“

SERIALIZABLE
”。

原因是

Phantom Reads
-事务不会锁定整个表,而只会锁定已被事务读取的行。

因此,如果另一个事务插入新数据,则尚未锁定它们,并且会出现错误。

可序列化可通过阻止所有其他事务来避免这种情况,直到完成这一事务为止。

您可以通过

SET TRANSACTION ISOLATION LEVEL SERIALIZABLE;

文档:http :
//www.postgresql.org/docs/9.1/static/transaction-
iso.html



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5618382.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存