Home Explore Blog CI



postgresql

6th chunk of `doc/src/sgml/ref/create_subscription.sgml`
94f7dc34cc4726846b25c9e2ceb213c8b5176175784550f90000000100000fa0
 requires that replication
          has successfully finished the initial table synchronization
          phase. So even when <literal>two_phase</literal> is enabled for a
          subscription, the internal two-phase state remains
          temporarily <quote>pending</quote> until the initialization phase
          completes. See column <structfield>subtwophasestate</structfield>
          of <link linkend="catalog-pg-subscription"><structname>pg_subscription</structname></link>
          to know the actual two-phase state.
         </para>

        </listitem>
       </varlistentry>

       <varlistentry id="sql-createsubscription-params-with-disable-on-error">
        <term><literal>disable_on_error</literal> (<type>boolean</type>)</term>
        <listitem>
         <para>
          Specifies whether the subscription should be automatically disabled
          if any errors are detected by subscription workers during data
          replication from the publisher. The default is
          <literal>false</literal>.
         </para>
        </listitem>
       </varlistentry>

       <varlistentry id="sql-createsubscription-params-with-password-required">
        <term><literal>password_required</literal> (<type>boolean</type>)</term>
        <listitem>
         <para>
          If set to <literal>true</literal>, connections to the publisher made
          as a result of this subscription must use password authentication
          and the password must be specified as a part of the connection
          string. This setting is ignored when the subscription is owned by a
          superuser.  The default is <literal>true</literal>. Only superusers
          can set this value to <literal>false</literal>.
         </para>
        </listitem>
       </varlistentry>

       <varlistentry id="sql-createsubscription-params-with-run-as-owner">
        <term><literal>run_as_owner</literal> (<type>boolean</type>)</term>
        <listitem>
         <para>
          If true, all replication actions are performed as the subscription
          owner. If false, replication workers will perform actions on each
          table as the owner of that table. The latter configuration is
          generally much more secure; for details, see
          <xref linkend="logical-replication-security" />.
          The default is <literal>false</literal>.
         </para>
        </listitem>
       </varlistentry>

       <varlistentry id="sql-createsubscription-params-with-origin">
        <term><literal>origin</literal> (<type>string</type>)</term>
        <listitem>
         <para>
          Specifies whether the subscription will request the publisher to only
          send changes that don't have an origin or send changes regardless of
          origin. Setting <literal>origin</literal> to <literal>none</literal>
          means that the subscription will request the publisher to only send
          changes that don't have an origin. Setting <literal>origin</literal>
          to <literal>any</literal> means that the publisher sends changes
          regardless of their origin. The default is <literal>any</literal>.
         </para>
         <para>
          See <xref linkend="sql-createsubscription-notes"/> for details of how
          <literal>copy_data = true</literal> can interact with the
          <literal>origin</literal> parameter.
         </para>
        </listitem>
       </varlistentry>

       <varlistentry id="sql-createsubscription-params-with-failover">
        <term><literal>failover</literal> (<type>boolean</type>)</term>
        <listitem>
         <para>
          Specifies whether the replication slots associated with the subscription
          are enabled to be synced to the standbys so that logical
          replication can be resumed from the new primary after failover.
          The default is <literal>false</literal>.
         </para>
        </listitem>
       </varlistentry>
      </variablelist></para>

    </listitem>
  

Title: CREATE SUBSCRIPTION WITH Clause Parameters (Continued): disable_on_error, password_required, run_as_owner, origin, failover
Summary
This section details additional `WITH` clause parameters for `CREATE SUBSCRIPTION`. It covers `disable_on_error`, which controls automatic disabling on errors; `password_required`, enforcing password authentication for connections (ignored for superusers); `run_as_owner`, specifying the user for replication actions, contrasting subscription owner versus table owner (recommending table owner for security); `origin`, defining whether the subscription requests changes with or without an origin; and `failover`, determining whether replication slots are synced to standbys for failover resumption.