COMMIT PREPARED — commit a transaction that was earlier prepared for two-phase commit
COMMIT PREPARED transaction_id
COMMIT PREPARED
commits a transaction that is in
prepared state.
transaction_id
The transaction identifier of the transaction that is to be committed.
To commit a prepared transaction, you must be either the same user that executed the transaction originally, or a superuser. But you do not have to be in the same session that executed the transaction.
This command cannot be executed inside a transaction block. The prepared transaction is committed immediately.
All currently available prepared transactions are listed in the
pg_prepared_xacts
system view.
If more than one Datanode and/or Coordinator are involved in the
transaction, COMMIT PREPARED
command will propagate to
all these nodes.
If xc_maintenance_mode
GUC parameter is set to
ON
, COMMIT PREPARED
will not propagate
to other nodes. It just runs locally and report the result to the
GTM
.
Commit the transaction identified by the transaction
identifier foobar
:
COMMIT PREPARED 'foobar';
COMMIT PREPARED
is a
PostgreSQL extension. It is intended for use by
external transaction management systems, some of which are covered by
standards (such as X/Open XA), but the SQL side of those systems is not
standardized.