2005-06-18 00:32:51 +02:00
|
|
|
<!--
|
2010-09-20 22:08:53 +02:00
|
|
|
doc/src/sgml/ref/rollback_prepared.sgml
|
2005-06-18 00:32:51 +02:00
|
|
|
PostgreSQL documentation
|
|
|
|
-->
|
|
|
|
|
2017-10-20 03:16:39 +02:00
|
|
|
<refentry id="sql-rollback-prepared">
|
2014-02-24 03:25:35 +01:00
|
|
|
<indexterm zone="sql-rollback-prepared">
|
|
|
|
<primary>ROLLBACK PREPARED</primary>
|
|
|
|
</indexterm>
|
|
|
|
|
2005-06-18 00:32:51 +02:00
|
|
|
<refmeta>
|
2010-04-03 09:23:02 +02:00
|
|
|
<refentrytitle>ROLLBACK PREPARED</refentrytitle>
|
2008-11-14 11:22:48 +01:00
|
|
|
<manvolnum>7</manvolnum>
|
2005-06-18 00:32:51 +02:00
|
|
|
<refmiscinfo>SQL - Language Statements</refmiscinfo>
|
|
|
|
</refmeta>
|
|
|
|
|
|
|
|
<refnamediv>
|
|
|
|
<refname>ROLLBACK PREPARED</refname>
|
|
|
|
<refpurpose>cancel a transaction that was earlier prepared for two-phase commit</refpurpose>
|
|
|
|
</refnamediv>
|
|
|
|
|
|
|
|
<refsynopsisdiv>
|
|
|
|
<synopsis>
|
2017-10-09 04:00:57 +02:00
|
|
|
ROLLBACK PREPARED <replaceable class="parameter">transaction_id</replaceable>
|
2005-06-18 00:32:51 +02:00
|
|
|
</synopsis>
|
|
|
|
</refsynopsisdiv>
|
|
|
|
|
|
|
|
<refsect1>
|
|
|
|
<title>Description</title>
|
|
|
|
|
|
|
|
<para>
|
2010-11-23 21:27:50 +01:00
|
|
|
<command>ROLLBACK PREPARED</command> rolls back a transaction that is in
|
2005-06-18 00:32:51 +02:00
|
|
|
prepared state.
|
|
|
|
</para>
|
|
|
|
</refsect1>
|
|
|
|
|
|
|
|
<refsect1>
|
|
|
|
<title>Parameters</title>
|
|
|
|
|
|
|
|
<variablelist>
|
|
|
|
<varlistentry>
|
2017-10-09 04:00:57 +02:00
|
|
|
<term><replaceable class="parameter">transaction_id</replaceable></term>
|
2005-06-18 00:32:51 +02:00
|
|
|
<listitem>
|
|
|
|
<para>
|
|
|
|
The transaction identifier of the transaction that is to be
|
|
|
|
rolled back.
|
|
|
|
</para>
|
|
|
|
</listitem>
|
|
|
|
</varlistentry>
|
|
|
|
</variablelist>
|
|
|
|
</refsect1>
|
|
|
|
|
|
|
|
<refsect1>
|
|
|
|
<title>Notes</title>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
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.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
This command cannot be executed inside a transaction block. The prepared
|
|
|
|
transaction is rolled back immediately.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
All currently available prepared transactions are listed in the
|
2006-02-26 04:20:46 +01:00
|
|
|
<link linkend="view-pg-prepared-xacts"><structname>pg_prepared_xacts</structname></link>
|
|
|
|
system view.
|
2005-06-18 00:32:51 +02:00
|
|
|
</para>
|
|
|
|
</refsect1>
|
|
|
|
|
|
|
|
<refsect1 id="sql-rollback-prepared-examples">
|
|
|
|
<title id="sql-rollback-prepared-examples-title">Examples</title>
|
|
|
|
<para>
|
|
|
|
Roll back the transaction identified by the transaction
|
2017-10-09 03:44:17 +02:00
|
|
|
identifier <literal>foobar</literal>:
|
2010-11-23 21:27:50 +01:00
|
|
|
|
2005-06-18 00:32:51 +02:00
|
|
|
<programlisting>
|
|
|
|
ROLLBACK PREPARED 'foobar';
|
2011-08-07 09:49:45 +02:00
|
|
|
</programlisting></para>
|
2005-06-18 00:32:51 +02:00
|
|
|
|
|
|
|
</refsect1>
|
|
|
|
|
2012-04-16 21:40:54 +02:00
|
|
|
<refsect1>
|
|
|
|
<title>Compatibility</title>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
<command>ROLLBACK PREPARED</command> is a
|
|
|
|
<productname>PostgreSQL</productname> 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.
|
|
|
|
</para>
|
|
|
|
</refsect1>
|
|
|
|
|
2005-06-18 00:32:51 +02:00
|
|
|
<refsect1>
|
|
|
|
<title>See Also</title>
|
|
|
|
|
|
|
|
<simplelist type="inline">
|
2017-11-23 15:39:47 +01:00
|
|
|
<member><xref linkend="sql-prepare-transaction"/></member>
|
|
|
|
<member><xref linkend="sql-commit-prepared"/></member>
|
2005-06-18 00:32:51 +02:00
|
|
|
</simplelist>
|
|
|
|
</refsect1>
|
|
|
|
|
|
|
|
</refentry>
|