Re: [HACKERS] logical decoding of two-phase transactions

Поиск
Список
Период
Сортировка
От Ajin Cherian
Тема Re: [HACKERS] logical decoding of two-phase transactions
Дата
Msg-id CAFPTHDb+Ph1rx7nQHJHTyFEYtNENPEo9s5ku760Uo3j9g3-rfQ@mail.gmail.com
обсуждение исходный текст
Ответ на Re: [HACKERS] logical decoding of two-phase transactions  (vignesh C <vignesh21@gmail.com>)
Ответы Re: [HACKERS] logical decoding of two-phase transactions  (Amit Kapila <amit.kapila16@gmail.com>)
Список pgsql-hackers
On Wed, Jun 23, 2021 at 3:18 PM vignesh C <vignesh21@gmail.com> wrote:

> Thanks for the updated patch.
> The patch v89-0001-Add-option-to-set-two-phase-in-CREATE_REPLICATIO.patch
> has the following:
> +       <term><literal>TWO_PHASE</literal></term>
> +       <listitem>
> +        <para>
> +         Specify that this logical replication slot supports decoding
> of two-phase
> +         transactions. With this option, two-phase commands like
> +         <literal>PREPARE TRANSACTION</literal>, <literal>COMMIT
> PREPARED</literal>
> +         and <literal>ROLLBACK PREPARED</literal> are decoded and transmitted.
> +         The transaction will be decoded and transmitted at
> +         <literal>PREPARE TRANSACTION</literal> time.
> +        </para>
> +       </listitem>
> +      </varlistentry>
>
> The patch v89-0003-Add-support-for-prepared-transactions-to-built-i.patch
> has the following:
> +       <term><literal>TWO_PHASE</literal></term>
> +       <listitem>
> +        <para>
> +         Specify that this replication slot supports decode of two-phase
> +         transactions. With this option, two-phase commands like
> +         <literal>PREPARE TRANSACTION</literal>, <literal>COMMIT
> PREPARED</literal>
> +         and <literal>ROLLBACK PREPARED</literal> are decoded and transmitted.
> +         The transaction will be decoded and transmitted at
> +         <literal>PREPARE TRANSACTION</literal> time.
> +        </para>
> +       </listitem>
> +      </varlistentry>
>
> We can remove one of them.

I missed this. Updated.

Also fixed this comment below which I had missed in my last patch:

>4) You could mention "Before you use two-phase commit commands, you
>must set max_prepared_transactions to at least 1" for example 2.
> $ pg_recvlogical -d postgres --slot=test --drop-slot
>+
>+$ pg_recvlogical -d postgres --slot=test --create-slot --two-phase
>+$ pg_recvlogical -d postgres --slot=test --start -f -

Comment 6:
>6)  This should be before verbose, the options are printed alphabetically
>       printf(_("  -v, --verbose          output verbose messages\n"));
>+       printf(_("  -t, --two-phase        enable two-phase decoding
>when creating a slot\n"));
>        printf(_("  -V, --version          output version information,
>then exit\n"));

This was also fixed in the last patch.

regards,
Ajin Cherian
Fujitsu Australia

Вложения

В списке pgsql-hackers по дате отправления:

Предыдущее
От: Fabien COELHO
Дата:
Сообщение: Re: pgbench logging broken by time logic changes
Следующее
От: Boris Kolpackov
Дата:
Сообщение: Re: Pipeline mode and PQpipelineSync()