Re: pg_locks - what is a virtualxid locktype

Поиск
Список
Период
Сортировка
От Alvaro Herrera
Тема Re: pg_locks - what is a virtualxid locktype
Дата
Msg-id 201901291512.n532mfd7od4x@alvherre.pgsql
обсуждение исходный текст
Ответ на Re: pg_locks - what is a virtualxid locktype  (Shreeyansh Dba <shreeyansh2014@gmail.com>)
Список pgsql-admin
On 2019-Jan-29, Shreeyansh Dba wrote:

> The virtualxid lock is special. It’s a exclusive lock on the transaction’s
> own virtual transaction ID that every transaction always holds. No other
> transaction can ever acquire it while the transaction is running.
> The purpose of this is to allow one transaction to wait until another
> transaction commits or rolls back using PostgreSQL’s locking mechanism, and
> it’s used internally.

A little more specific than that: it's used when some process (such as
CREATE INDEX CONCURRENTLY) needs to wait even on sessions that might be
read-only.  Such transactions don't have transaction-ids that write
transactions have, which is why the only way is to wait on the virtual
transaction-id.


-- 
Álvaro Herrera                https://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services


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

Предыдущее
От: Pepe TD Vo
Дата:
Сообщение: Re: import tablespaces from oracle to postgres
Следующее
От: Shreeyansh Dba
Дата:
Сообщение: Re: import tablespaces from oracle to postgres