available since protocol version
4.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Int64 (TimestampTz)</term>
<listitem>
<para>
Abort timestamp of the transaction. The value is in number
of microseconds since PostgreSQL epoch (2000-01-01). This field is
available since protocol version 4.
</para>
</listitem>
</varlistentry>
</variablelist>
</listitem>
</varlistentry>
</variablelist>
<para>
The following messages (Begin Prepare, Prepare, Commit Prepared, Rollback Prepared, Stream Prepare)
are available since protocol version 3.
</para>
<variablelist>
<varlistentry id="protocol-logicalrep-message-formats-Begin-Prepare">
<term>Begin Prepare</term>
<listitem>
<variablelist>
<varlistentry>
<term>Byte1('b')</term>
<listitem>
<para>
Identifies the message as the beginning of a prepared transaction message.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Int64 (XLogRecPtr)</term>
<listitem>
<para>
The LSN of the prepare.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Int64 (XLogRecPtr)</term>
<listitem>
<para>
The end LSN of the prepared transaction.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Int64 (TimestampTz)</term>
<listitem>
<para>
Prepare timestamp of the transaction. The value is in number
of microseconds since PostgreSQL epoch (2000-01-01).
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Int32 (TransactionId)</term>
<listitem>
<para>
Xid of the transaction.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>String</term>
<listitem>
<para>
The user defined GID of the prepared transaction.
</para>
</listitem>
</varlistentry>
</variablelist>
</listitem>
</varlistentry>
<varlistentry id="protocol-logicalrep-message-formats-Prepare">
<term>Prepare</term>
<listitem>
<variablelist>
<varlistentry>
<term>Byte1('P')</term>
<listitem>
<para>
Identifies the message as a prepared transaction message.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Int8(0)</term>
<listitem>
<para>
Flags; currently unused.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Int64 (XLogRecPtr)</term>
<listitem>
<para>
The LSN of the prepare.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Int64 (XLogRecPtr)</term>
<listitem>
<para>
The end LSN of the prepared transaction.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Int64 (TimestampTz)</term>
<listitem>
<para>
Prepare timestamp of the transaction. The value is in number
of microseconds since PostgreSQL epoch (2000-01-01).
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Int32 (TransactionId)</term>
<listitem>
<para>
Xid of the transaction.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>String</term>
<listitem>
<para>
The user defined GID of the prepared transaction.
</para>
</listitem>
</varlistentry>
</variablelist>
</listitem>
</varlistentry>
<varlistentry id="protocol-logicalrep-message-formats-Commit-Prepared">
<term>Commit Prepared</term>
<listitem>
<variablelist>
<varlistentry>
<term>Byte1('K')</term>