COMMIT PREPARED — подтверждение транзакции, ранее подготовленной для двухфазного завершения
COMMIT PREPARED transaction_id
COMMIT PREPARED подтверждает транзакцию, находящуюся в
подготовленном состоянии.
transaction_idИдентификатор транзакции, которая должна быть подтверждена.
Чтобы подтвердить подготовленную транзакцию, вы должны быть либо тем же пользователем, который изначально выполнил транзакцию, либо суперпользователем. Однако вам не обязательно находиться в том же сеансе, в котором выполнялась транзакция.
Эту команду нельзя выполнить внутри блока транзакции. Подготовленная транзакция подтверждается немедленно.
Все доступные в данный момент подготовленные транзакции перечислены в системном представлении
pg_prepared_xacts.
Подтвердить транзакцию с идентификатором
foobar:
COMMIT PREPARED 'foobar';
COMMIT PREPARED является расширением
Digital Q.DataBase. Оно предназначено для использования
внешними системами управления транзакциями, некоторые из которых описаны в стандартах
(таких как X/Open XA), но SQL-сторона этих систем не
стандартизирована.