Transaction lock granting order

Поиск
Список
Период
Сортировка
От Joshua Ma
Тема Transaction lock granting order
Дата
Msg-id CAG9XPV=YAj0W1onOAt5PW5Yjbv3KwjD+xgw8OuGLGc1C0rVaog@mail.gmail.com
обсуждение исходный текст
Ответы Re: Transaction lock granting order
Список pgsql-general
Can someone point me to documentation on (or confirm) this detail on Postgres locking?

- Transaction X starts and acquires a lock on a table T
- Transaction Y starts and attempts to acquire a conflicting lock on T - it is now blocked
- Transaction Z starts and also attempts to acquire a conflicting lock on T - it is now blocked

Is txn Y guaranteed to be the first txn to proceed once X finishes? Is there some "lock queue order" that is respected? Is there any chance Z can proceed before Y, say if it acquires a less aggressive lock?

Put differently: when txn Y starts, it has to wait. Is this wait time at most the length of the longest txn older than Y?

Thanks,
Josh

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

Предыдущее
От: Jeff Janes
Дата:
Сообщение: Re: INSERT - UPDATE throughput oscillating and SSD activity after stopping the client
Следующее
От: Tom Lane
Дата:
Сообщение: Re: Transaction lock granting order