Re: Are advisory locks guaranteed to be First Come First Serve? And can the behavior be relied upon?

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: Are advisory locks guaranteed to be First Come First Serve? And can the behavior be relied upon?
Дата
Msg-id 3028225.1598535873@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Are advisory locks guaranteed to be First Come First Serve? And can the behavior be relied upon?  (Hemil Ruparel <hemilruparel2002@gmail.com>)
Список pgsql-general
Laurenz Albe <laurenz.albe@cybertec.at> writes:
> On Thu, 2020-08-27 at 10:10 +0530, Hemil Ruparel wrote:
>> I was playing with Advisory locks. I opened three connections to the database And obtained
>> a lock with the same key. I noticed that the locks were obtained in the order of requests.
>> I was wondering whether the locks are guaranteed to be First Come First Serve and can this
>> behaviour be relied upon.

> Yes - lock requests that block are queued, with later lock requests queued behind previous
> ones.  Once a lock gets free, the first in line gets it.

> This is the same for all heavyweight locks in PostgreSQL.

There is an exception: the queue order will be rearranged if we find
that doing so is necessary to avoid a deadlock failure.  See
src/backend/storage/lmgr/README

            regards, tom lane



В списке pgsql-general по дате отправления:

Предыдущее
От: Susan Joseph
Дата:
Сообщение: Re: SSL between Primary and Seconday PostgreSQL DBs
Следующее
От: Daniel Jakots
Дата:
Сообщение: could not send data to client: Permission denied