48.63. pg_prepared_xacts

Представление pg_prepared_xacts содержит информацию о транзакциях, которые в настоящее время подготовлены для двухфазной фиксации (за подробностями обратитесь к PREPARE TRANSACTION).

Представление pg_prepared_xacts содержит отдельную запись для каждой подготовленной транзакции. Эта запись удаляется, когда транзакция фиксируется или откатывается.

Таблица 48-64. Колонки pg_prepared_xacts

ИмяТипСсылкиОписание
transactionxid Числовой идентификатор подготовленной транзакции
gidtext Глобальный идентификатор транзакции, назначаемый транзакции
preparedtimestamp with time zone Время, в которое транзакция была подготовлена для фиксации
ownernamepg_authid.rolnameИмя пользователя, выполнявшего транзакцию
databasenamepg_database.datnameИмя базы данных, в которой выполнялась транзакция

Когда запрашивается представление pg_prepared_xacts, внутренние структуры данных менеджера транзакций на мгновение блокируются и создаётся их копия для вывода через это представление. Это гарантирует, что представление выдаёт согласованный набор результатов, при этом не задерживая обычные операции на более продолжительное время, чем необходимо. Тем не менее, это может отрицательно сказаться на производительности базы данных при частых обращениях к представлению.

48.63. pg_prepared_xacts

The view pg_prepared_xacts displays information about transactions that are currently prepared for two-phase commit (see PREPARE TRANSACTION for details).

pg_prepared_xacts contains one row per prepared transaction. An entry is removed when the transaction is committed or rolled back.

Table 48-64. pg_prepared_xacts Columns

NameTypeReferencesDescription
transactionxid  Numeric transaction identifier of the prepared transaction
gidtext  Global transaction identifier that was assigned to the transaction
preparedtimestamp with time zone  Time at which the transaction was prepared for commit
ownernamepg_authid.rolname Name of the user that executed the transaction
databasenamepg_database.datname Name of the database in which the transaction was executed

When the pg_prepared_xacts view is accessed, the internal transaction manager data structures are momentarily locked, and a copy is made for the view to display. This ensures that the view produces a consistent set of results, while not blocking normal operations longer than necessary. Nonetheless there could be some impact on database performance if this view is frequently accessed.

FAQ