【发布时间】:2017-11-06 22:39:27
【问题描述】:
我是 postgresql 新手,并试图了解咨询锁。我有以下两种情况:
-
在两个不同的会话中使用不同的数据库:(按预期方式工作)
会话1:
SELECT pg_advisory_lock(1);成功获取锁Session 2(注意不同数据库):
SELECT pg_advisory_lock(1);成功获取锁 在同一个数据库中使用不同的架构:当我执行相同的操作时,第二个“会话”阻塞。
似乎建议锁在数据库级别而不是(数据库和模式)组合上运行。我的假设是正确的还是我遗漏了什么?
【问题讨论】:
-
"而不是(数据库和模式)" --- 您没有在查询中的任何地方指定模式。假设这是真的,它怎么知道获取锁的模式是什么?
-
它们具有与常规锁相同的“范围”:每个数据库
标签: postgresql