Postgresql
自動送出模式下的 PostgreSQL 更新會死鎖嗎?
在自動送出模式下,PostgreSQL 中的更新是否可能死鎖?如果是這樣,如何以及為什麼?(或者,為什麼不呢?)
如果更新影響多個表行,那肯定是可能的。
這可以通過兩種方式實現:
- 該查詢修改了目標表中的多行。
- 更新後的表對另一個表有外鍵約束。在這種情況下,您最終可能會
FOR KEY SHARE
鎖定所引用的表。如果您的語句成功鎖定了幾行,然後又阻塞了其他行上的鎖,則可能會發生死鎖。