Note: The following description applies both to Postgres-XC and PostgreSQL if not described explicitly.
ROLLBACK PREPARED rolls back a transaction that is in prepared state.
To roll back 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 rolled back immediately.
All currently available prepared transactions are listed in the pg_prepared_xacts system view.
Note: The following description applies only to Postgres-XC
If more than one Datanode and/or Coordinator are involved in the transaction, ROLLBACK PREPARED command will propagate to all these nodes.
Note: The following description applies only to Postgres-XC
If xc_maintenance_mode GUC parameter is set to ON, ROLLBACK PREPARED will not propagate to other nodes. It just runs locally and report the result to GTM.