<div id="docs-body">
 <div class="section">
  <div class="titlepage">
   <div>
    <div>
     <h3 class="title">
      <a name="group-replication-system-variables">
      </a>
      20.9.1 Group Replication System Variables
     </h3>
    </div>
   </div>
  </div>
  <a class="indexterm" name="idm46045130912864">
  </a>
  <a class="indexterm" name="idm46045130911376">
  </a>
  <p>
   This section lists the system variables that are specific to the
      Group Replication plugin.
  </p>
  <p>
   The name of each Group Replication system variable is prefixed
      with
   <code class="literal">
    group_replication_
   </code>
   .
  </p>
  <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
   <div class="admon-title">
    Note
   </div>
   <p>
    InnoDB Cluster uses Group Replication, but the default values
        of the Group Replication system variables may differ from the
        defaults documented in this section. For example, in
        InnoDB Cluster, the default value of
    <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_communication_stack">
     <code class="literal">
      group_replication_communication_stack
     </code>
    </a>
    is
    <code class="literal">
     MYSQL
    </code>
    , not
    <code class="literal">
     XCOM
    </code>
    as it
        is for a default Group Replication implementation.
   </p>
   <p>
    For more information, see
    <a class="ulink" href="/doc/mysql-shell/8.4/en/mysql-innodb-cluster.html" target="_top">
     MySQL InnoDB Cluster
    </a>
    .
   </p>
  </div>
  <p>
   Some system variables on a Group Replication group member,
      including some Group Replication-specific system variables and
      some general system variables, are group-wide configuration
      settings. These system variables must have the same value on all
      group members, and require a full reboot of the group (a bootstrap
      by a server with
   <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_bootstrap_group">
    <code class="literal">
     group_replication_bootstrap_group=ON
    </code>
   </a>
   )
      in order for the value change to take effect. For instructions to
      reboot a group where every member has been stopped, see
   <a class="xref" href="group-replication-restarting-group.html" title="20.5.2 Restarting a Group">
    Section 20.5.2, “Restarting a Group”
   </a>
   .
  </p>
  <p>
   If a running group has a value set for a group-wide configuration
      setting, and a joining member has a different value set for that
      system variable, the joining member cannot join the group until
      the value is changed to match. If the group has a value set for
      one of these system variables, and the joining member does not
      support the system variable, it cannot join the group.
  </p>
  <p>
   The following system variables are group-wide configuration
      settings:
  </p>
  <div class="itemizedlist">
   <ul class="itemizedlist" style="list-style-type: disc; ">
    <li class="listitem">
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_single_primary_mode">
       <code class="literal">
        group_replication_single_primary_mode
       </code>
      </a>
     </p>
    </li>
    <li class="listitem">
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_enforce_update_everywhere_checks">
       <code class="literal">
        group_replication_enforce_update_everywhere_checks
       </code>
      </a>
     </p>
    </li>
    <li class="listitem">
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_gtid_assignment_block_size">
       <code class="literal">
        group_replication_gtid_assignment_block_size
       </code>
      </a>
     </p>
    </li>
    <li class="listitem">
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_view_change_uuid">
       <code class="literal">
        group_replication_view_change_uuid
       </code>
      </a>
      (deprecated)
     </p>
    </li>
    <li class="listitem">
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_paxos_single_leader">
       <code class="literal">
        group_replication_paxos_single_leader
       </code>
      </a>
     </p>
    </li>
    <li class="listitem">
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_communication_stack">
       <code class="literal">
        group_replication_communication_stack
       </code>
      </a>
      (a special case not policed by Group Replication's own checks;
          see the system variable description for details)
     </p>
    </li>
    <li class="listitem">
     <p>
      <a class="link" href="server-system-variables.html#sysvar_default_table_encryption">
       <code class="literal">
        default_table_encryption
       </code>
      </a>
     </p>
    </li>
    <li class="listitem">
     <p>
      <a class="link" href="server-system-variables.html#sysvar_lower_case_table_names">
       <code class="literal">
        lower_case_table_names
       </code>
      </a>
     </p>
    </li>
   </ul>
  </div>
  <p>
   Group-wide configuration settings cannot be changed by the usual
      methods while Group Replication is running, but it is possible to
      use the
   <a class="link" href="group-replication-functions-for-mode.html#function_group-replication-switch-to-single-primary-mode">
    <code class="literal">
     group_replication_switch_to_single_primary_mode()
    </code>
   </a>
   and
   <a class="link" href="group-replication-functions-for-mode.html#function_group-replication-switch-to-multi-primary-mode">
    <code class="literal">
     group_replication_switch_to_multi_primary_mode()
    </code>
   </a>
   functions to change the values of
   <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_single_primary_mode">
    <code class="literal">
     group_replication_single_primary_mode
    </code>
   </a>
   and
   <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_enforce_update_everywhere_checks">
    <code class="literal">
     group_replication_enforce_update_everywhere_checks
    </code>
   </a>
   while the group is still running. For more information, see
   <a class="xref" href="group-replication-changing-group-mode.html" title="20.5.1.2 Changing the Group Mode">
    Section 20.5.1.2, “Changing the Group Mode”
   </a>
   .
  </p>
  <p>
   Most system variables for Group Replication can have different
      values on different group members. For the following system
      variables, it is advisable to set the same value on all members of
      a group in order to avoid unnecessary rollback of transactions,
      failure of message delivery, or failure of message recovery:
  </p>
  <div class="itemizedlist">
   <ul class="itemizedlist" style="list-style-type: disc; ">
    <li class="listitem">
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_auto_increment_increment">
       <code class="literal">
        group_replication_auto_increment_increment
       </code>
      </a>
     </p>
    </li>
    <li class="listitem">
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_communication_max_message_size">
       <code class="literal">
        group_replication_communication_max_message_size
       </code>
      </a>
     </p>
    </li>
    <li class="listitem">
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_compression_threshold">
       <code class="literal">
        group_replication_compression_threshold
       </code>
      </a>
     </p>
    </li>
    <li class="listitem">
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_message_cache_size">
       <code class="literal">
        group_replication_message_cache_size
       </code>
      </a>
     </p>
    </li>
    <li class="listitem">
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_transaction_size_limit">
       <code class="literal">
        group_replication_transaction_size_limit
       </code>
      </a>
     </p>
    </li>
   </ul>
  </div>
  <p>
   The value of
   <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_preemptive_garbage_collection">
    <code class="literal">
     group_replication_preemptive_garbage_collection
    </code>
   </a>
   must be the same on all group members.
  </p>
  <p>
   Most system variables for Group Replication are described as
      dynamic, and their values can be changed while the server is
      running. However, in most cases, the change takes effect only
      after you stop and restart Group Replication on the group member
      using a
   <a class="link" href="stop-group-replication.html" title="15.4.3.2 STOP GROUP_REPLICATION Statement">
    <code class="literal">
     STOP GROUP_REPLICATION
    </code>
   </a>
   statement followed by a
   <a class="link" href="start-group-replication.html" title="15.4.3.1 START GROUP_REPLICATION Statement">
    <code class="literal">
     START
      GROUP_REPLICATION
    </code>
   </a>
   statement. Changes to the following
      system variables take effect without stopping and restarting Group
      Replication:
  </p>
  <div class="itemizedlist">
   <ul class="itemizedlist" style="list-style-type: disc; ">
    <li class="listitem">
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_advertise_recovery_endpoints">
       <code class="literal">
        group_replication_advertise_recovery_endpoints
       </code>
      </a>
     </p>
    </li>
    <li class="listitem">
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_autorejoin_tries">
       <code class="literal">
        group_replication_autorejoin_tries
       </code>
      </a>
     </p>
    </li>
    <li class="listitem">
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_consistency">
       <code class="literal">
        group_replication_consistency
       </code>
      </a>
     </p>
    </li>
    <li class="listitem">
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_exit_state_action">
       <code class="literal">
        group_replication_exit_state_action
       </code>
      </a>
     </p>
    </li>
    <li class="listitem">
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_applier_threshold">
       <code class="literal">
        group_replication_flow_control_applier_threshold
       </code>
      </a>
     </p>
    </li>
    <li class="listitem">
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_certifier_threshold">
       <code class="literal">
        group_replication_flow_control_certifier_threshold
       </code>
      </a>
     </p>
    </li>
    <li class="listitem">
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_hold_percent">
       <code class="literal">
        group_replication_flow_control_hold_percent
       </code>
      </a>
     </p>
    </li>
    <li class="listitem">
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_max_quota">
       <code class="literal">
        group_replication_flow_control_max_quota
       </code>
      </a>
     </p>
    </li>
    <li class="listitem">
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_member_quota_percent">
       <code class="literal">
        group_replication_flow_control_member_quota_percent
       </code>
      </a>
     </p>
    </li>
    <li class="listitem">
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_min_quota">
       <code class="literal">
        group_replication_flow_control_min_quota
       </code>
      </a>
     </p>
    </li>
    <li class="listitem">
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_min_recovery_quota">
       <code class="literal">
        group_replication_flow_control_min_recovery_quota
       </code>
      </a>
     </p>
    </li>
    <li class="listitem">
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_mode">
       <code class="literal">
        group_replication_flow_control_mode
       </code>
      </a>
     </p>
    </li>
    <li class="listitem">
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_period">
       <code class="literal">
        group_replication_flow_control_period
       </code>
      </a>
     </p>
    </li>
    <li class="listitem">
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_release_percent">
       <code class="literal">
        group_replication_flow_control_release_percent
       </code>
      </a>
     </p>
    </li>
    <li class="listitem">
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_force_members">
       <code class="literal">
        group_replication_force_members
       </code>
      </a>
     </p>
    </li>
    <li class="listitem">
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_ip_allowlist">
       <code class="literal">
        group_replication_ip_allowlist
       </code>
      </a>
     </p>
    </li>
    <li class="listitem">
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_member_expel_timeout">
       <code class="literal">
        group_replication_member_expel_timeout
       </code>
      </a>
     </p>
    </li>
    <li class="listitem">
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_member_weight">
       <code class="literal">
        group_replication_member_weight
       </code>
      </a>
     </p>
    </li>
    <li class="listitem">
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_transaction_size_limit">
       <code class="literal">
        group_replication_transaction_size_limit
       </code>
      </a>
     </p>
    </li>
    <li class="listitem">
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_unreachable_majority_timeout">
       <code class="literal">
        group_replication_unreachable_majority_timeout
       </code>
      </a>
     </p>
    </li>
   </ul>
  </div>
  <p>
   When you change the values of any Group Replication system
      variables, bear in mind that if there is a point where Group
      Replication is stopped on every member at once by a
   <a class="link" href="stop-group-replication.html" title="15.4.3.2 STOP GROUP_REPLICATION Statement">
    <code class="literal">
     STOP GROUP_REPLICATION
    </code>
   </a>
   statement or
      system shutdown, the group must be restarted by bootstrapping as
      if it was being started for the first time. For instructions on
      doing this safely, see
   <a class="xref" href="group-replication-restarting-group.html" title="20.5.2 Restarting a Group">
    Section 20.5.2, “Restarting a Group”
   </a>
   . In the case
      of group-wide configuration settings, this is required, but if you
      are changing other settings, try to ensure that at least one
      member is running at all times.
  </p>
  <div class="important" style="margin-left: 0.5in; margin-right: 0.5in;">
   <div class="admon-title">
    Important
   </div>
   <div class="itemizedlist">
    <ul class="itemizedlist" style="list-style-type: disc; ">
     <li class="listitem">
      <p>
       A number of system variables for Group Replication are not
            completely validated during server startup if they are
            passed as command line arguments to the server. These system
            variables include
       <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_group_name">
        <code class="literal">
         group_replication_group_name
        </code>
       </a>
       ,
       <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_single_primary_mode">
        <code class="literal">
         group_replication_single_primary_mode
        </code>
       </a>
       ,
       <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_force_members">
        <code class="literal">
         group_replication_force_members
        </code>
       </a>
       ,
            the SSL variables, and the flow control system variables.
            They are fully validated only after the server has started.
      </p>
     </li>
     <li class="listitem">
      <p>
       System variables for Group Replication that specify IP
            addresses or host names for group members are not validated
            until a
       <a class="link" href="start-group-replication.html" title="15.4.3.1 START GROUP_REPLICATION Statement">
        <code class="literal">
         START
            GROUP_REPLICATION
        </code>
       </a>
       statement is issued. Group
            Replication's Group Communication System (GCS) is not
            available to validate the values until that point.
      </p>
     </li>
    </ul>
   </div>
  </div>
  <p>
   Server system variables specific to the Group Replication plugin,
      along with descriptions of their function or purpose, are listed
      here:
  </p>
  <div class="itemizedlist">
   <ul class="itemizedlist" style="list-style-type: disc; ">
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_advertise_recovery_endpoints">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_advertise_recovery_endpoints">
       <code class="literal">
        group_replication_advertise_recovery_endpoints
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045130802992">
     </a>
     <a class="indexterm" name="idm46045130801888">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_advertise_recovery_endpoints">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-advertise-recovery-endpoints=value
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_advertise_recovery_endpoints">
            group_replication_advertise_recovery_endpoints
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          String
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           DEFAULT
          </code>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running. The change takes effect immediately on
          the member. However, a joining member that already received
          the previous value of the system variable continues to use
          that value. Only members that join after the value change
          receive the new value.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_advertise_recovery_endpoints">
       <code class="literal">
        group_replication_advertise_recovery_endpoints
       </code>
      </a>
      specifies how a joining member can establish a connection to
          an existing member for state transfer for distributed
          recovery. The connection is used for both remote cloning
          operations and state transfer from the donor's binary log.
     </p>
     <p>
      A value of
      <code class="literal">
       DEFAULT
      </code>
      , which is the default
          setting, means joining members use the existing member's
          standard SQL client connection, as specified by MySQL Server's
      <a class="link" href="server-system-variables.html#sysvar_hostname">
       <code class="literal">
        hostname
       </code>
      </a>
      and
      <a class="link" href="server-system-variables.html#sysvar_port">
       <code class="literal">
        port
       </code>
      </a>
      system variables. If an
          alternative port number is specified by the
      <a class="link" href="replication-options-replica.html#sysvar_report_port">
       <code class="literal">
        report_port
       </code>
      </a>
      system variable,
          that one is used instead. The Performance Schema table
      <a class="link" href="performance-schema-replication-group-members-table.html" title="29.12.11.16 The replication_group_members Table">
       <code class="literal">
        replication_group_members
       </code>
      </a>
      shows
          this connection's address and port number in the
      <code class="literal">
       MEMBER_HOST
      </code>
      and
      <code class="literal">
       MEMBER_PORT
      </code>
      columns.
     </p>
     <p>
      Instead of
      <code class="literal">
       DEFAULT
      </code>
      , you can specify one or
          more distributed recovery endpoints, which the existing member
          advertises to joining members for them to use. Offering
          distributed recovery endpoints lets administrators control
          distributed recovery traffic separately from regular MySQL
          client connections to the group members. Joining members try
          each of the endpoints in turn in the order they are specified
          on the list.
     </p>
     <p>
      Specify the distributed recovery endpoints as a
          comma-separated list of IP addresses and port numbers, for
          example:
     </p>
     <div class="copytoclipboard-wrapper">
      <pre class="programlisting one-line language-none"><div class="docs-select-all right" id="sa6310409"><div class="copy-help left">Press ⌘+C to copy</div> <div class="right"><button class="clipboard-btn" title="Copy to Clipboard"><span class="icon-clipboard"></span></button></div></div><code class="language-none">group_replication_advertise_recovery_endpoints= "127.0.0.1:3306,127.0.0.1:4567,[::1]:3306,localhost:3306"</code></pre>
     </div>
     <p>
      IPv4 and IPv6 addresses and host names can be used in any
          combination. IPv6 addresses must be specified in square
          brackets. Host names must resolve to a local IP address.
          Wildcard address formats cannot be used, and you cannot
          specify an empty list. Note that the standard SQL client
          connection is not automatically included on a list of
          distributed recovery endpoints. If you want to use it as an
          endpoint, you must include it explicitly on the list.
     </p>
     <p>
      For details of how to select IP addresses and ports as
          distributed recovery endpoints, and how joining members use
          them, see
      <a class="xref" href="group-replication-distributed-recovery-connections.html#group-replication-distributed-recovery-connections-endpoints" title="20.5.4.1.1 Selecting addresses for distributed recovery endpoints">
       Section 20.5.4.1.1, “Selecting addresses for distributed recovery endpoints”
      </a>
      .
          A summary of the requirements is as follows:
     </p>
     <div class="itemizedlist">
      <ul class="itemizedlist" style="list-style-type: circle; ">
       <li class="listitem">
        <p>
         The IP addresses do not have to be configured for MySQL
              Server, but they do have to be assigned to the server.
        </p>
       </li>
       <li class="listitem">
        <p>
         The ports do have to be configured for MySQL Server using
              the
         <a class="link" href="server-system-variables.html#sysvar_port">
          <code class="literal">
           port
          </code>
         </a>
         ,
         <a class="link" href="replication-options-replica.html#sysvar_report_port">
          <code class="literal">
           report_port
          </code>
         </a>
         , or
         <a class="link" href="server-system-variables.html#sysvar_admin_port">
          <code class="literal">
           admin_port
          </code>
         </a>
         system
              variable.
        </p>
       </li>
       <li class="listitem">
        <p>
         Appropriate permissions are required for the replication
              user for distributed recovery if the
         <a class="link" href="server-system-variables.html#sysvar_admin_port">
          <code class="literal">
           admin_port
          </code>
         </a>
         is used.
        </p>
       </li>
       <li class="listitem">
        <p>
         The IP addresses do not need to be added to the Group
              Replication allowlist specified by the
         <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_ip_allowlist">
          <code class="literal">
           group_replication_ip_allowlist
          </code>
         </a>
         system variable.
        </p>
       </li>
       <li class="listitem">
        <p>
         The SSL requirements for the connection are as specified
              by the
         <code class="literal">
          group_replication_recovery_ssl_*
         </code>
         options.
        </p>
       </li>
      </ul>
     </div>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_allow_local_lower_version_join">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_allow_local_lower_version_join">
       <code class="literal">
        group_replication_allow_local_lower_version_join
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045130749344">
     </a>
     <a class="indexterm" name="idm46045130748224">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_allow_local_lower_version_join">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-allow-local-lower-version-join[={OFF|ON}]
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Deprecated
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_allow_local_lower_version_join">
            group_replication_allow_local_lower_version_join
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Boolean
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           OFF
          </code>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, but the change takes effect only after
          you stop and restart Group Replication on the group member.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_allow_local_lower_version_join">
       <code class="literal">
        group_replication_allow_local_lower_version_join
       </code>
      </a>
      allows the current server to join the group even if it is
          running a lower MySQL Server version than the group. With the
          default setting
      <code class="literal">
       OFF
      </code>
      , servers are not
          permitted to join a replication group if they are running a
          lower version than the existing group members. This standard
          policy ensures that all members of a group are able to
          exchange messages and apply transactions.
     </p>
     <p>
      Set
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_allow_local_lower_version_join">
       <code class="literal">
        group_replication_allow_local_lower_version_join
       </code>
      </a>
      to
      <code class="literal">
       ON
      </code>
      only in the following scenarios:
     </p>
     <div class="itemizedlist">
      <ul class="itemizedlist" style="list-style-type: circle; ">
       <li class="listitem">
        <p>
         A server must be added to the group in an emergency in
              order to improve the group's fault tolerance, and only
              older versions are available.
        </p>
       </li>
       <li class="listitem">
        <p>
         You want to roll back an upgrade for one or more
              replication group members without shutting down the whole
              group and bootstrapping it again.
        </p>
       </li>
      </ul>
     </div>
     <div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
      <div class="admon-title">
       Warning
      </div>
      <p>
       Setting this option to
       <code class="literal">
        ON
       </code>
       does not make
            the new member compatible with the group, and allows it to
            join the group without any safeguards against incompatible
            behaviors by the existing members. To ensure the new
            member's correct operation, take
       <span class="emphasis">
        <em>
         both
        </em>
       </span>
       of the following precautions:
      </p>
      <div class="orderedlist">
       <ol class="orderedlist" type="1">
        <li class="listitem">
         <p>
          Before the server running the lower version joins the
                group, stop all writes on that server.
         </p>
        </li>
        <li class="listitem">
         <p>
          From the point where the server running the lower
                version joins the group, stop all writes on the other
                servers in the group.
         </p>
        </li>
       </ol>
      </div>
      <p>
       Without these precautions, the server running the lower
            version is likely to experience difficulties and terminate
            with an error.
      </p>
     </div>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_auto_increment_increment">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_auto_increment_increment">
       <code class="literal">
        group_replication_auto_increment_increment
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045130708016">
     </a>
     <a class="indexterm" name="idm46045130706896">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_auto_increment_increment">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-auto-increment-increment=#
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_auto_increment_increment">
            group_replication_auto_increment_increment
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Integer
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           7
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Minimum Value
         </th>
         <td>
          <code class="literal">
           1
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Maximum Value
         </th>
         <td>
          <code class="literal">
           65535
          </code>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      This system variable should have the same value on all group
          members. You cannot change the value of this system variable
          while Group Replication is running. You must stop Group
          Replication, change the value of the system variable, then
          restart Group Replication, on each of the group members.
          During this process, the value of the system variable is
          permitted to differ between group members, but some
          transactions on group members might be rolled back.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_auto_increment_increment">
       <code class="literal">
        group_replication_auto_increment_increment
       </code>
      </a>
      determines the interval between successive values for
          auto-incremented columns for transactions that execute on this
          server instance. Adding an interval avoids the selection of
          duplicate auto-increment values for writes on group members,
          which causes rollback of transactions. The default value of 7
          represents a balance between the number of usable values and
          the permitted maximum size of a replication group (9 members).
          If your group has more or fewer members, you can set this
          system variable to match the expected number of group members
          before Group Replication is started.
     </p>
     <div class="important" style="margin-left: 0.5in; margin-right: 0.5in;">
      <div class="admon-title">
       Important
      </div>
      <p>
       Setting
       <code class="literal">
        group_replication_auto_increment_increment
       </code>
       has no effect when
       <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_single_primary_mode">
        <code class="literal">
         group_replication_single_primary_mode
        </code>
       </a>
       is
       <code class="literal">
        ON
       </code>
       .
      </p>
     </div>
     <p>
      When Group Replication is started on a server instance, the
          value of the server system variable
      <a class="link" href="replication-options-source.html#sysvar_auto_increment_increment">
       <code class="literal">
        auto_increment_increment
       </code>
      </a>
      is
          changed to this value, and the value of the server system
          variable
      <a class="link" href="replication-options-source.html#sysvar_auto_increment_offset">
       <code class="literal">
        auto_increment_offset
       </code>
      </a>
      is
          changed to the server ID. The changes are reverted when Group
          Replication is stopped. These changes are only made and
          reverted if
      <a class="link" href="replication-options-source.html#sysvar_auto_increment_increment">
       <code class="literal">
        auto_increment_increment
       </code>
      </a>
      and
      <a class="link" href="replication-options-source.html#sysvar_auto_increment_offset">
       <code class="literal">
        auto_increment_offset
       </code>
      </a>
      each
          have their default value of 1. If their values have already
          been modified from the default, Group Replication does not
          alter them. The system variables are also not modified when
          Group Replication is in single-primary mode, where only one
          server writes.
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_autorejoin_tries">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_autorejoin_tries">
       <code class="literal">
        group_replication_autorejoin_tries
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045130664080">
     </a>
     <a class="indexterm" name="idm46045130663040">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_autorejoin_tries">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-autorejoin-tries=#
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_autorejoin_tries">
            group_replication_autorejoin_tries
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Integer
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           3
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Minimum Value
         </th>
         <td>
          <code class="literal">
           0
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Maximum Value
         </th>
         <td>
          <code class="literal">
           2016
          </code>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, and the change takes effect
          immediately. The system variable's current value is read when
          an issue occurs that means the behavior is needed.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_autorejoin_tries">
       <code class="literal">
        group_replication_autorejoin_tries
       </code>
      </a>
      specifies the number of tries that a member makes to
          automatically rejoin the group if it is expelled, or if it is
          unable to contact a majority of the group before the
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_unreachable_majority_timeout">
       <code class="literal">
        group_replication_unreachable_majority_timeout
       </code>
      </a>
      setting is reached. When the member's expulsion or unreachable
          majority timeout is reached, it makes an attempt to rejoin
          (using the current plugin option values), then continues to
          make further auto-rejoin attempts up to the specified number
          of tries. After an unsuccessful auto-rejoin attempt, the
          member waits 5 minutes before the next try. If the specified
          number of tries is exhausted without the member rejoining or
          being stopped, the member proceeds to the action specified by
          the
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_exit_state_action">
       <code class="literal">
        group_replication_exit_state_action
       </code>
      </a>
      system variable.
     </p>
     <p>
      During and between auto-rejoin attempts, a member remains in
          super read only mode and does not accept writes, but reads can
          still be made on the member, with an increasing likelihood of
          stale reads over time. If you cannot tolerate the possibility
          of stale reads for any period of time, set
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_autorejoin_tries">
       <code class="literal">
        group_replication_autorejoin_tries
       </code>
      </a>
      to 0. For more information on the auto-rejoin feature, and
          considerations when choosing a value for this option, see
      <a class="xref" href="group-replication-responses-failure-rejoin.html" title="20.7.7.3 Auto-Rejoin">
       Section 20.7.7.3, “Auto-Rejoin”
      </a>
      .
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_bootstrap_group">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_bootstrap_group">
       <code class="literal">
        group_replication_bootstrap_group
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045130625072">
     </a>
     <a class="indexterm" name="idm46045130624032">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_bootstrap_group">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-bootstrap-group[={OFF|ON}]
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_bootstrap_group">
            group_replication_bootstrap_group
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Boolean
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           OFF
          </code>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_bootstrap_group">
       <code class="literal">
        group_replication_bootstrap_group
       </code>
      </a>
      configures this server to bootstrap the group. This system
          variable must
      <span class="emphasis">
       <em>
        only
       </em>
      </span>
      be set on one server,
          and
      <span class="emphasis">
       <em>
        only
       </em>
      </span>
      when starting the group for the
          first time or restarting the entire group. After the group has
          been bootstrapped, set this option to
      <code class="literal">
       OFF
      </code>
      .
          It should be set to
      <code class="literal">
       OFF
      </code>
      both dynamically
          and in the configuration files. Starting two servers or
          restarting one server with this option set while the group is
          running may lead to an artificial split brain situation, where
          two independent groups with the same name are bootstrapped.
     </p>
     <p>
      For instructions to bootstrap a group for the first time, see
      <a class="xref" href="group-replication-bootstrap.html" title="20.2.1.5 Bootstrapping the Group">
       Section 20.2.1.5, “Bootstrapping the Group”
      </a>
      . For
          instructions to safely bootstrap a group where transactions
          have been executed and certified, see
      <a class="xref" href="group-replication-restarting-group.html" title="20.5.2 Restarting a Group">
       Section 20.5.2, “Restarting a Group”
      </a>
      .
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_clone_threshold">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_clone_threshold">
       <code class="literal">
        group_replication_clone_threshold
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045130593120">
     </a>
     <a class="indexterm" name="idm46045130592080">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_clone_threshold">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-clone-threshold=#
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_clone_threshold">
            group_replication_clone_threshold
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Integer
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           9223372036854775807
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Minimum Value
         </th>
         <td>
          <code class="literal">
           1
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Maximum Value
         </th>
         <td>
          <code class="literal">
           9223372036854775807
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Unit
         </th>
         <td>
          transactions
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, but the change takes effect only after
          you stop and restart Group Replication on the group member.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_clone_threshold">
       <code class="literal">
        group_replication_clone_threshold
       </code>
      </a>
      specifies the transaction gap, as a number of transactions,
          between the existing member (donor) and the joining member
          (recipient) that triggers the use of a remote cloning
          operation for state transfer to the joining member during the
          distributed recovery process. If the transaction gap between
          the joining member and a suitable donor exceeds the threshold,
          Group Replication begins distributed recovery with a remote
          cloning operation. If the transaction gap is below the
          threshold, or if the remote cloning operation is not
          technically possible, Group Replication proceeds directly to
          state transfer from a donor's binary log.
     </p>
     <div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
      <div class="admon-title">
       Warning
      </div>
      <p>
       Do not use a low setting for
       <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_clone_threshold">
        <code class="literal">
         group_replication_clone_threshold
        </code>
       </a>
       in an active group. If a number of transactions above the
            threshold takes place in the group while the remote cloning
            operation is in progress, the joining member triggers a
            remote cloning operation again after restarting, and could
            continue this indefinitely. To avoid this situation, ensure
            that you set the threshold to a number higher than the
            number of transactions that you would expect to occur in the
            group during the time taken for the remote cloning
            operation.
      </p>
     </div>
     <p>
      To use this function, both the donor and the joining member
          must be set up beforehand to support cloning. For
          instructions, see
      <a class="xref" href="group-replication-cloning.html" title="20.5.4.2 Cloning for Distributed Recovery">
       Section 20.5.4.2, “Cloning for Distributed Recovery”
      </a>
      .
          When a remote cloning operation is carried out, Group
          Replication manages it for you, including the required server
          restart, provided that
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_start_on_boot">
       <code class="literal">
        group_replication_start_on_boot=ON
       </code>
      </a>
      is set. If not, you must restart the server manually. The
          remote cloning operation replaces the existing data dictionary
          on the joining member, but Group Replication checks and does
          not proceed if the joining member has additional transactions
          that are not present on the other group members, because these
          transactions would be erased by the cloning operation.
     </p>
     <p>
      The default setting (which is the maximum permitted sequence
          number for a transaction in a GTID) means that state transfer
          from a donor's binary log is virtually always attempted
          rather than cloning. However, note that Group Replication
          always attempts to execute a cloning operation, regardless of
          your threshold, if state transfer from a donor's binary
          log is impossible, for example because the transactions needed
          by the joining member are not available in the binary logs on
          any existing group member. If you do not want to use cloning
          at all in your replication group, do not install the clone
          plugin on the members.
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_communication_debug_options">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_communication_debug_options">
       <code class="literal">
        group_replication_communication_debug_options
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045130550896">
     </a>
     <a class="indexterm" name="idm46045130549776">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_communication_debug_options">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-communication-debug-options=value
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_communication_debug_options">
            group_replication_communication_debug_options
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          String
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           GCS_DEBUG_NONE
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Valid Values
         </th>
         <td>
          <p class="valid-value">
           <code class="literal">
            GCS_DEBUG_NONE
           </code>
          </p>
          <p class="valid-value">
           <code class="literal">
            GCS_DEBUG_BASIC
           </code>
          </p>
          <p class="valid-value">
           <code class="literal">
            GCS_DEBUG_TRACE
           </code>
          </p>
          <p class="valid-value">
           <code class="literal">
            XCOM_DEBUG_BASIC
           </code>
          </p>
          <p class="valid-value">
           <code class="literal">
            XCOM_DEBUG_TRACE
           </code>
          </p>
          <p class="valid-value">
           <code class="literal">
            GCS_DEBUG_ALL
           </code>
          </p>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, and the change takes effect
          immediately.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_communication_debug_options">
       <code class="literal">
        group_replication_communication_debug_options
       </code>
      </a>
      configures the level of debugging messages to provide for the
          different Group Replication components, such as the Group
          Communication System (GCS) and the group communication engine
          (XCom, a Paxos variant). The debug information is stored in
          the
      <code class="filename">
       GCS_DEBUG_TRACE
      </code>
      file in the data
          directory.
     </p>
     <p>
      The set of available options, specified as strings, can be
          combined. The following options are available:
     </p>
     <div class="itemizedlist">
      <ul class="itemizedlist" style="list-style-type: circle; ">
       <li class="listitem">
        <p>
         <code class="literal">
          GCS_DEBUG_NONE
         </code>
         disables all debugging
              levels for both GCS and XCom.
        </p>
       </li>
       <li class="listitem">
        <p>
         <code class="literal">
          GCS_DEBUG_BASIC
         </code>
         enables basic debugging
              information in GCS.
        </p>
       </li>
       <li class="listitem">
        <p>
         <code class="literal">
          GCS_DEBUG_TRACE
         </code>
         enables trace
              information in GCS.
        </p>
       </li>
       <li class="listitem">
        <p>
         <code class="literal">
          XCOM_DEBUG_BASIC
         </code>
         enables basic
              debugging information in XCom.
        </p>
       </li>
       <li class="listitem">
        <p>
         <code class="literal">
          XCOM_DEBUG_TRACE
         </code>
         enables trace
              information in XCom.
        </p>
       </li>
       <li class="listitem">
        <p>
         <code class="literal">
          GCS_DEBUG_ALL
         </code>
         enables all debugging
              levels for both GCS and XCom.
        </p>
       </li>
      </ul>
     </div>
     <p>
      Setting the debug level to
      <code class="literal">
       GCS_DEBUG_NONE
      </code>
      only has an effect when provided without any other option.
          Setting the debug level to
      <code class="literal">
       GCS_DEBUG_ALL
      </code>
      overrides all other options.
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_communication_max_message_size">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_communication_max_message_size">
       <code class="literal">
        group_replication_communication_max_message_size
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045130502336">
     </a>
     <a class="indexterm" name="idm46045130501216">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_communication_max_message_size">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-communication-max-message-size=#
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_communication_max_message_size">
            group_replication_communication_max_message_size
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Integer
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           10485760
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Minimum Value
         </th>
         <td>
          <code class="literal">
           0
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Maximum Value
         </th>
         <td>
          <code class="literal">
           1073741824
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Unit
         </th>
         <td>
          bytes
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      This system variable should have the same value on all group
          members. You cannot change the value of this system variable
          while Group Replication is running. You must stop Group
          Replication, change the value of the system variable, then
          restart Group Replication, on each of the group members.
          During this process, the value of the system variable is
          permitted to differ between group members, but some
          transactions on group members might be rolled back.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_communication_max_message_size">
       <code class="literal">
        group_replication_communication_max_message_size
       </code>
      </a>
      specifies a maximum message size for Group Replication
          communications. Messages greater than this size are
          automatically split into fragments that are sent separately
          and reassembled by the recipients. For more information, see
      <a class="xref" href="group-replication-performance-message-fragmentation.html" title="20.7.5 Message Fragmentation">
       Section 20.7.5, “Message Fragmentation”
      </a>
      .
     </p>
     <p>
      A maximum message size of 10485760 bytes (10 MiB) is set by
          default, which means that fragmentation is used by default.
          The greatest permitted value is the same as the maximum value
          of the
      <a class="link" href="replication-options-replica.html#sysvar_replica_max_allowed_packet">
       <code class="literal">
        replica_max_allowed_packet
       </code>
      </a>
      system variable, which is 1073741824 bytes (1 GB).
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_communication_max_message_size">
       <code class="literal">
        group_replication_communication_max_message_size
       </code>
      </a>
      must be less than
      <a class="link" href="replication-options-replica.html#sysvar_replica_max_allowed_packet">
       <code class="literal">
        replica_max_allowed_packet
       </code>
      </a>
      ,
          because the applier thread cannot handle message fragments
          larger than the maximum permitted packet size. To switch off
          fragmentation, set
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_communication_max_message_size">
       <code class="literal">
        group_replication_communication_max_message_size
       </code>
      </a>
      to
      <code class="literal">
       0
      </code>
      .
     </p>
     <p>
      In order for members of a replication group to use
          fragmentation, the group's communication protocol version
          must be 8.0.16 or later. Use the
      <a class="link" href="group-replication-functions-for-communication-protocol.html#function_group-replication-get-communication-protocol">
       <code class="literal">
        group_replication_get_communication_protocol()
       </code>
      </a>
      function to view the group's communication protocol version.
          If a lower version is in use, group members do not fragment
          messages. You can use the
      <a class="link" href="group-replication-functions-for-communication-protocol.html#function_group-replication-set-communication-protocol">
       <code class="literal">
        group_replication_set_communication_protocol()
       </code>
      </a>
      function to set the group's communication protocol to a higher
          version if all group members support it. For more information,
          see
      <a class="xref" href="group-replication-communication-protocol.html" title="20.5.1.4 Setting a Group's Communication Protocol Version">
       Section 20.5.1.4, “Setting a Group's Communication Protocol Version”
      </a>
      .
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_communication_stack">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_communication_stack">
       <code class="literal">
        group_replication_communication_stack
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045130455152">
     </a>
     <a class="indexterm" name="idm46045130454112">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_communication_stack">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_communication_stack">
            group_replication_communication_stack
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          String
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           XCOM
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Valid Values
         </th>
         <td>
          <p class="valid-value">
           <code class="literal">
            XCOM
           </code>
          </p>
          <p class="valid-value">
           <code class="literal">
            MYSQL
           </code>
          </p>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
      <div class="admon-title">
       Note
      </div>
      <p>
       This system variable is effectively a group-wide
            configuration setting; although it can be set at runtime, a
            full reboot of the replication group is required for any
            change to take effect.
      </p>
     </div>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_communication_stack">
       <code class="literal">
        group_replication_communication_stack
       </code>
      </a>
      specifies whether the XCom communication stack or the MySQL
          communication stack is to be used to establish group
          communication connections between members. The XCom
          communication stack is Group Replication's own
          implementation, and does not support authentication or network
          namespaces. The MySQL communication stack is MySQL
          Server's native implementation, with support for
          authentication and network namespaces, and access to new
          security functions immediately on release. All members of a
          group must use the same communication stack.
     </p>
     <p>
      When you use the MySQL communication stack in place of XCom,
          MySQL Server establishes each connection between group members
          using its own authentication and encryption protocols.
     </p>
     <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
      <div class="admon-title">
       Note
      </div>
      <p>
       If you are using InnoDB Cluster, the default value of
       <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_communication_stack">
        <code class="literal">
         group_replication_communication_stack
        </code>
       </a>
       is
       <code class="literal">
        MYSQL
       </code>
       .
      </p>
      <p>
       For more information, see
       <a class="ulink" href="/doc/mysql-shell/8.4/en/mysql-innodb-cluster.html" target="_top">
        MySQL InnoDB Cluster
       </a>
       .
      </p>
     </div>
     <p>
      Additional configuration is required when you set up a group
          to use MySQL’s communication stack; see
      <a class="xref" href="group-replication-connection-security.html" title="20.6.1 Communication Stack for Connection Security Management">
       Section 20.6.1, “Communication Stack for Connection Security Management”
      </a>
      .
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_communication_stack">
       <code class="literal">
        group_replication_communication_stack
       </code>
      </a>
      is effectively a group-wide configuration setting, and the
          setting must be the same on all group members. However, this
          is not policed by Group Replication’s own checks for
          group-wide configuration settings. A member with a different
          value from the rest of the group cannot communicate with the
          other members at all, because the communication protocols are
          incompatible, so it cannot exchange information about its
          configuration settings.
     </p>
     <p>
      This means that although the value of the system variable can
          be changed while Group Replication is running, and takes
          effect after you restart Group Replication on the group
          member, the member still cannot rejoin the group until the
          setting has been changed on all the members. You must
          therefore stop Group Replication on all of the members and
          change the value of the system variable on them all before you
          can restart the group. Because all of the members are stopped,
          a full reboot of the group (a bootstrap by a server with
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_bootstrap_group">
       <code class="literal">
        group_replication_bootstrap_group=ON
       </code>
      </a>
      )
          is required in order for the value change to take effect. For
          instructions to migrate from one communication stack to
          another, see
      <a class="xref" href="group-replication-connection-security.html" title="20.6.1 Communication Stack for Connection Security Management">
       Section 20.6.1, “Communication Stack for Connection Security Management”
      </a>
      .
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_components_stop_timeout">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_components_stop_timeout">
       <code class="literal">
        group_replication_components_stop_timeout
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045130413200">
     </a>
     <a class="indexterm" name="idm46045130412080">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_components_stop_timeout">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-components-stop-timeout=#
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_components_stop_timeout">
            group_replication_components_stop_timeout
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Integer
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           300
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Minimum Value
         </th>
         <td>
          <code class="literal">
           2
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Maximum Value
         </th>
         <td>
          <code class="literal">
           31536000
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Unit
         </th>
         <td>
          seconds
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, but the change takes effect only after
          you stop and restart Group Replication on the group member.
     </p>
     <p>
      <code class="literal">
       group_replication_components_stop_timeout
      </code>
      specifies the time, in seconds, for which Group Replication
          waits for each of its modules to complete ongoing processes
          while shutting down. The component timeout applies after a
      <a class="link" href="stop-group-replication.html" title="15.4.3.2 STOP GROUP_REPLICATION Statement">
       <code class="literal">
        STOP GROUP_REPLICATION
       </code>
      </a>
      statement is issued, which happens automatically during server
          restart or auto-rejoin.
     </p>
     <p>
      The timeout is used to resolve situations in which Group
          Replication components cannot be stopped normally, which might
          happen if a member is expelled from the group while it is in
          an error state, or while a process such as MySQL Enterprise Backup is holding a
          global lock on tables on the member. In such situations, the
          member cannot stop the applier thread or complete the
          distributed recovery process to rejoin.
      <code class="literal">
       STOP
          GROUP_REPLICATION
      </code>
      does not complete until either the
          situation is resolved (for example, by the lock being
          released), or the component timeout expires and the modules
          are shut down regardless of their status.
     </p>
     <p>
      The default value is 300 seconds, so that Group Replication
          components are stopped after 5 minutes if the situation is not
          resolved before that time, allowing the member to be restarted
          and to rejoin.
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_compression_threshold">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_compression_threshold">
       <code class="literal">
        group_replication_compression_threshold
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045130375072">
     </a>
     <a class="indexterm" name="idm46045130374032">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_compression_threshold">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-compression-threshold=#
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_compression_threshold">
            group_replication_compression_threshold
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Integer
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           1000000
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Minimum Value
         </th>
         <td>
          <code class="literal">
           0
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Maximum Value
         </th>
         <td>
          <code class="literal">
           4294967295
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Unit
         </th>
         <td>
          bytes
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The threshold value in bytes above which compression is
          applied to messages sent between group members. If this system
          variable is set to zero, compression is disabled. The value of
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_compression_threshold">
       <code class="literal">
        group_replication_compression_threshold
       </code>
      </a>
      should be the same on all group members.
     </p>
     <p>
      Group Replication uses the LZ4 compression algorithm to
          compress messages sent in the group. Note that the maximum
          supported input size for the LZ4 compression algorithm is
          2113929216 bytes. This limit is lower than the maximum
          possible value for the
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_compression_threshold">
       <code class="literal">
        group_replication_compression_threshold
       </code>
      </a>
      system variable, which is matched to the maximum message size
          accepted by XCom. With the LZ4 compression algorithm, do not
          set a value greater than 2113929216 bytes for
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_compression_threshold">
       <code class="literal">
        group_replication_compression_threshold
       </code>
      </a>
      ,
          because transactions above this size cannot be committed when
          message compression is enabled.
     </p>
     <p>
      For more information, see
      <a class="xref" href="group-replication-message-compression.html" title="20.7.4 Message Compression">
       Section 20.7.4, “Message Compression”
      </a>
      .
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_consistency">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_consistency">
       <code class="literal">
        group_replication_consistency
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045130336160">
     </a>
     <a class="indexterm" name="idm46045130335056">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_consistency">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-consistency=value
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_consistency">
            group_replication_consistency
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global, Session
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Enumeration
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           BEFORE_ON_PRIMARY_FAILOVER
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Valid Values
         </th>
         <td>
          <p class="valid-value">
           <code class="literal">
            EVENTUAL
           </code>
          </p>
          <p class="valid-value">
           <code class="literal">
            BEFORE_ON_PRIMARY_FAILOVER
           </code>
          </p>
          <p class="valid-value">
           <code class="literal">
            BEFORE
           </code>
          </p>
          <p class="valid-value">
           <code class="literal">
            AFTER
           </code>
          </p>
          <p class="valid-value">
           <code class="literal">
            BEFORE_AND_AFTER
           </code>
          </p>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_consistency">
       <code class="literal">
        group_replication_consistency
       </code>
      </a>
      is a server system variable rather than a Group Replication
          plugin-specific variable, so a restart of Group Replication is
          not required for the change to take effect. Changing the
          session value of the system variable takes effect immediately,
          and changing the global value takes effect for new sessions
          that start after the change. The
      <a class="link" href="privileges-provided.html#priv_group-replication-admin">
       <code class="literal">
        GROUP_REPLICATION_ADMIN
       </code>
      </a>
      privilege is required to change the global setting for this
          system variable.
     </p>
     <p>
      <code class="literal">
       group_replication_consistency
      </code>
      determines
          the transaction consistency guarantee which a group provides;
          this can done globally, or per transaction.
      <code class="literal">
       group_replication_consistency
      </code>
      also
          determines the fencing mechanism used by newly elected
          primaries in single primary groups. The effect of the variable
          must be considered both for read-only and for read/write
          transactions. The following list shows the possible values of
          this variable, in order of increasing transaction consistency
          guarantee:
     </p>
     <div class="itemizedlist">
      <ul class="itemizedlist" style="list-style-type: circle; ">
       <li class="listitem">
        <p>
         <code class="literal">
          EVENTUAL
         </code>
        </p>
        <p>
         Neither read-only nor read/write transactions wait for
              preceding transactions to be applied before executing.
              (Before this variables was added, this was the default
              behavior.) A read/write transaction does not wait for
              other members to apply a transaction. This means that a
              transaction can be externalized on one member before the
              others. This also means that, in the event of a primary
              failover, the new primary can accept new read-only and
              read/write transactions before the previous primary
              transactions have all been applied.
        </p>
       </li>
       <li class="listitem">
        <p>
         <code class="literal">
          BEFORE_ON_PRIMARY_FAILOVER
         </code>
        </p>
        <p>
         New read-only or read/write transactions with a newly
              elected primary that is applying a backlog from the old
              primary are not applied until any backlog has been
              applied. This ensures that, in the event of primary
              failover, clients always see the latest value on the
              primary, regardless of whether the failover is
              intentional. This guarantees consistency, but means that
              clients must be able to handle the delay in the event that
              a backlog is being applied. The length of this delay
              depends on the size of the backlog being processed, but is
              usually not great.
        </p>
       </li>
       <li class="listitem">
        <p>
         <code class="literal">
          BEFORE
         </code>
        </p>
        <p>
         A read/write transaction waits for all preceding
              transactions to complete before being applied. A read-only
              transaction waits for all preceding transactions to
              complete before being executed. This ensures that this
              transaction reads the latest value by affecting only the
              latency of the transaction. This reduces any overhead from
              synchronization, by ensuring it is used on read-only
              transactions only. This consistency level also includes
              the consistency guarantees provided by
         <code class="literal">
          BEFORE_ON_PRIMARY_FAILOVER
         </code>
         .
        </p>
       </li>
       <li class="listitem">
        <p>
         <code class="literal">
          AFTER
         </code>
        </p>
        <p>
         A read/write transaction waits until its changes have been
              applied to all of the other members. This value has no
              effect on read-only transactions, and ensures that, when a
              transaction is committed on the local member, any
              subsequent transaction reads the value written or a more
              recent value on any group member. This means that
              read-only transactions on the other members remain
              uncommitted until all preceding transactions are
              committed, increasing the latency of the affected
              transaction.
        </p>
        <p>
         Use this mode with a group that is intended primarily for
              read-only operations to ensure that any read/write
              transactions are applied everywhere once they commit. This
              can be used by your application to ensure that subsequent
              reads fetch the latest data, including the latest writes.
              This reduces any overhead from synchronization, by
              ensuring that synchronization is used for read/write
              transactions only.
        </p>
        <p>
         <code class="literal">
          AFTER
         </code>
         includes the consistency
              guarantees provided by
         <code class="literal">
          BEFORE_ON_PRIMARY_FAILOVER
         </code>
         .
        </p>
       </li>
       <li class="listitem">
        <p>
         <code class="literal">
          BEFORE_AND_AFTER
         </code>
        </p>
        <p>
         A read/write transaction waits for all preceding
              transactions to complete, and for all its changes to be
              applied on all other members, before being applied. A
              read-only transaction waits for all preceding transactions
              to complete before execution takes place. This consistency
              level also includes the consistency guarantees provided by
         <code class="literal">
          BEFORE_ON_PRIMARY_FAILOVER
         </code>
         .
        </p>
       </li>
      </ul>
     </div>
     <p>
      For more information, see
      <a class="xref" href="group-replication-consistency-guarantees.html" title="20.5.3 Transaction Consistency Guarantees">
       Section 20.5.3, “Transaction Consistency Guarantees”
      </a>
      .
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_enforce_update_everywhere_checks">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_enforce_update_everywhere_checks">
       <code class="literal">
        group_replication_enforce_update_everywhere_checks
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045130279168">
     </a>
     <a class="indexterm" name="idm46045130278128">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_enforce_update_everywhere_checks">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-enforce-update-everywhere-checks[={OFF|ON}]
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_enforce_update_everywhere_checks">
            group_replication_enforce_update_everywhere_checks
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Boolean
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           OFF
          </code>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
      <div class="admon-title">
       Note
      </div>
      <p>
       This system variable is a group-wide configuration setting,
            and a full reboot of the replication group is required for a
            change to take effect.
      </p>
     </div>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_enforce_update_everywhere_checks">
       <code class="literal">
        group_replication_enforce_update_everywhere_checks
       </code>
      </a>
      enables or disables strict consistency checks for
          multi-primary update everywhere. The default is that checks
          are disabled. In single-primary mode, this option must be
          disabled on all group members. In multi-primary mode, when
          this option is enabled, statements are checked as follows to
          ensure they are compatible with multi-primary mode:
     </p>
     <div class="itemizedlist">
      <ul class="itemizedlist" style="list-style-type: circle; ">
       <li class="listitem">
        <p>
         If a transaction is executed under the
         <code class="literal">
          SERIALIZABLE
         </code>
         isolation level, then its
              commit fails when synchronizing itself with the group.
        </p>
       </li>
       <li class="listitem">
        <p>
         If a transaction executes against a table that has foreign
              keys with cascading constraints, then the transaction
              fails to commit when synchronizing itself with the group.
        </p>
       </li>
      </ul>
     </div>
     <p>
      This system variable is a group-wide configuration setting. It
          must have the same value on all group members, cannot be
          changed while Group Replication is running, and requires a
          full reboot of the group (a bootstrap by a server with
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_bootstrap_group">
       <code class="literal">
        group_replication_bootstrap_group=ON
       </code>
      </a>
      )
          in order for the value change to take effect. For instructions
          to safely bootstrap a group where transactions have been
          executed and certified, see
      <a class="xref" href="group-replication-restarting-group.html" title="20.5.2 Restarting a Group">
       Section 20.5.2, “Restarting a Group”
      </a>
      .
     </p>
     <p>
      If the group has a value set for this system variable, and a
          joining member has a different value set for the system
          variable, the joining member cannot join the group until the
          value is changed to match. If the group members have a value
          set for this system variable, and the joining member does not
          support the system variable, it cannot join the group.
     </p>
     <p>
      Use the
      <a class="link" href="group-replication-functions-for-mode.html#function_group-replication-switch-to-single-primary-mode">
       <code class="literal">
        group_replication_switch_to_single_primary_mode()
       </code>
      </a>
      and
      <a class="link" href="group-replication-functions-for-mode.html#function_group-replication-switch-to-multi-primary-mode">
       <code class="literal">
        group_replication_switch_to_multi_primary_mode()
       </code>
      </a>
      functions to change the value of this system variable while
          the group is still running. For more information, see
      <a class="xref" href="group-replication-changing-group-mode.html" title="20.5.1.2 Changing the Group Mode">
       Section 20.5.1.2, “Changing the Group Mode”
      </a>
      .
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_exit_state_action">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_exit_state_action">
       <code class="literal">
        group_replication_exit_state_action
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045130239760">
     </a>
     <a class="indexterm" name="idm46045130238720">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_exit_state_action">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-exit-state-action=value
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_exit_state_action">
            group_replication_exit_state_action
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Enumeration
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           OFFLINE_MODE
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Valid Values
         </th>
         <td>
          <p class="valid-value">
           <code class="literal">
            ABORT_SERVER
           </code>
          </p>
          <p class="valid-value">
           <code class="literal">
            OFFLINE_MODE
           </code>
          </p>
          <p class="valid-value">
           <code class="literal">
            READ_ONLY
           </code>
          </p>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, and the change takes effect
          immediately. The system variable's current value is read when
          an issue occurs that means the behavior is needed.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_exit_state_action">
       <code class="literal">
        group_replication_exit_state_action
       </code>
      </a>
      configures how Group Replication behaves when this server
          instance leaves the group unintentionally, for example after
          encountering an applier error, or in the case of a loss of
          majority, or when another member of the group expels it due to
          a suspicion timing out. The timeout period for a member to
          leave the group in the case of a loss of majority is set by
          the
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_unreachable_majority_timeout">
       <code class="literal">
        group_replication_unreachable_majority_timeout
       </code>
      </a>
      system variable, and the timeout period for suspicions is set
          by the
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_member_expel_timeout">
       <code class="literal">
        group_replication_member_expel_timeout
       </code>
      </a>
      system variable. Note that an expelled group member does not
          know that it was expelled until it reconnects to the group, so
          the specified action is only taken if the member manages to
          reconnect, or if the member raises a suspicion on itself and
          expels itself.
     </p>
     <p>
      When a group member is expelled due to a suspicion timing out
          or a loss of majority, if the member has the
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_autorejoin_tries">
       <code class="literal">
        group_replication_autorejoin_tries
       </code>
      </a>
      system variable set to specify a number of auto-rejoin
          attempts, it first makes the specified number of attempts
          while in super read only mode, and then follows the action
          specified by
      <code class="literal">
       group_replication_exit_state_action
      </code>
      .
          Auto-rejoin attempts are not made in case of an applier error,
          because these are not recoverable.
     </p>
     <p>
      When
      <code class="literal">
       group_replication_exit_state_action
      </code>
      is
          set to
      <code class="literal">
       READ_ONLY
      </code>
      , if the member exits the
          group unintentionally or exhausts its auto-rejoin attempts,
          the instance switches MySQL to super read only mode (by
          setting the system variable
      <a class="link" href="server-system-variables.html#sysvar_super_read_only">
       <code class="literal">
        super_read_only
       </code>
      </a>
      to
      <code class="literal">
       ON
      </code>
      ).
     </p>
     <p>
      When
      <code class="literal">
       group_replication_exit_state_action
      </code>
      is
          set to
      <code class="literal">
       OFFLINE_MODE
      </code>
      , if the member exits
          the group unintentionally or exhausts its auto-rejoin
          attempts, the instance switches MySQL to offline mode (by
          setting the system variable
      <a class="link" href="server-system-variables.html#sysvar_offline_mode">
       <code class="literal">
        offline_mode
       </code>
      </a>
      to
      <code class="literal">
       ON
      </code>
      ). In this mode, connected client users
          are disconnected on their next request and connections are no
          longer accepted, with the exception of client users that have
          the
      <a class="link" href="privileges-provided.html#priv_connection-admin">
       <code class="literal">
        CONNECTION_ADMIN
       </code>
      </a>
      privilege
          (or the deprecated
      <a class="link" href="privileges-provided.html#priv_super">
       <code class="literal">
        SUPER
       </code>
      </a>
      privilege). Group Replication also sets the system variable
      <a class="link" href="server-system-variables.html#sysvar_super_read_only">
       <code class="literal">
        super_read_only
       </code>
      </a>
      to
      <code class="literal">
       ON
      </code>
      , so clients cannot make any updates,
          even if they have connected with the
      <a class="link" href="privileges-provided.html#priv_connection-admin">
       <code class="literal">
        CONNECTION_ADMIN
       </code>
      </a>
      or
      <a class="link" href="privileges-provided.html#priv_super">
       <code class="literal">
        SUPER
       </code>
      </a>
      privilege.
     </p>
     <p>
      When
      <code class="literal">
       group_replication_exit_state_action
      </code>
      is
          set to
      <code class="literal">
       ABORT_SERVER
      </code>
      , if the member exits
          the group unintentionally or exhausts its auto-rejoin
          attempts, the instance shuts down MySQL.
     </p>
     <div class="important" style="margin-left: 0.5in; margin-right: 0.5in;">
      <div class="admon-title">
       Important
      </div>
      <p>
       If a failure occurs before the member has successfully
            joined the group, the specified exit action
       <span class="emphasis">
        <em>
         is not
            taken
        </em>
       </span>
       . This is the case if there is a failure
            during the local configuration check, or a mismatch between
            the configuration of the joining member and the
            configuration of the group. In these situations, the
       <a class="link" href="server-system-variables.html#sysvar_super_read_only">
        <code class="literal">
         super_read_only
        </code>
       </a>
       system
            variable is left with its original value, connections
            continue to be accepted, and the server does not shut down
            MySQL. To ensure that the server cannot accept updates when
            Group Replication did not start, we therefore recommend that
       <a class="link" href="server-system-variables.html#sysvar_super_read_only">
        <code class="literal">
         super_read_only=ON
        </code>
       </a>
       is set
            in the server's configuration file at startup, which
            Group Replication changes to
       <code class="literal">
        OFF
       </code>
       on
            primary members after it has been started successfully. This
            safeguard is particularly important when the server is
            configured to start Group Replication on server boot
            (
       <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_start_on_boot">
        <code class="literal">
         group_replication_start_on_boot=ON
        </code>
       </a>
       ),
            but it is also useful when Group Replication is started
            manually using a
       <a class="link" href="start-group-replication.html" title="15.4.3.1 START GROUP_REPLICATION Statement">
        <code class="literal">
         START
            GROUP_REPLICATION
        </code>
       </a>
       statement.
      </p>
     </div>
     <p>
      For more information on using this option, and the full list
          of situations in which the exit action is taken, see
      <a class="xref" href="group-replication-responses-failure-exit.html" title="20.7.7.4 Exit Action">
       Section 20.7.7.4, “Exit Action”
      </a>
      .
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_flow_control_applier_threshold">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_applier_threshold">
       <code class="literal">
        group_replication_flow_control_applier_threshold
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045130174080">
     </a>
     <a class="indexterm" name="idm46045130173040">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_flow_control_applier_threshold">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-flow-control-applier-threshold=#
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_applier_threshold">
            group_replication_flow_control_applier_threshold
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Integer
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           25000
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Minimum Value
         </th>
         <td>
          <code class="literal">
           0
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Maximum Value
         </th>
         <td>
          <code class="literal">
           2147483647
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Unit
         </th>
         <td>
          transactions
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, and the change takes effect
          immediately.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_applier_threshold">
       <code class="literal">
        group_replication_flow_control_applier_threshold
       </code>
      </a>
      specifies the number of waiting transactions in the applier
          queue that trigger flow control.
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_flow_control_certifier_threshold">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_certifier_threshold">
       <code class="literal">
        group_replication_flow_control_certifier_threshold
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045130139296">
     </a>
     <a class="indexterm" name="idm46045130138256">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_flow_control_certifier_threshold">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-flow-control-certifier-threshold=#
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_certifier_threshold">
            group_replication_flow_control_certifier_threshold
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Integer
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           25000
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Minimum Value
         </th>
         <td>
          <code class="literal">
           0
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Maximum Value
         </th>
         <td>
          <code class="literal">
           2147483647
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Unit
         </th>
         <td>
          transactions
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, and the change takes effect
          immediately.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_certifier_threshold">
       <code class="literal">
        group_replication_flow_control_certifier_threshold
       </code>
      </a>
      specifies the number of waiting transactions in the certifier
          queue that trigger flow control.
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_flow_control_hold_percent">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_hold_percent">
       <code class="literal">
        group_replication_flow_control_hold_percent
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045130104448">
     </a>
     <a class="indexterm" name="idm46045130103408">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_flow_control_hold_percent">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-flow-control-hold-percent=#
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_hold_percent">
            group_replication_flow_control_hold_percent
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Integer
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           10
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Minimum Value
         </th>
         <td>
          <code class="literal">
           0
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Maximum Value
         </th>
         <td>
          <code class="literal">
           100
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Unit
         </th>
         <td>
          percentage
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, and the change takes effect
          immediately.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_hold_percent">
       <code class="literal">
        group_replication_flow_control_hold_percent
       </code>
      </a>
      defines what percentage of the group quota remains unused to
          allow a cluster under flow control to catch up on backlog. A
          value of 0 implies that no part of the quota is reserved for
          catching up on the work backlog.
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_flow_control_max_quota">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_max_quota">
       <code class="literal">
        group_replication_flow_control_max_quota
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045130069728">
     </a>
     <a class="indexterm" name="idm46045130068608">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_flow_control_max_quota">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-flow-control-max-quota=#
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_max_quota">
            group_replication_flow_control_max_quota
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Integer
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           0
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Minimum Value
         </th>
         <td>
          <code class="literal">
           0
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Maximum Value
         </th>
         <td>
          <code class="literal">
           2147483647
          </code>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, and the change takes effect
          immediately.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_max_quota">
       <code class="literal">
        group_replication_flow_control_max_quota
       </code>
      </a>
      defines the maximum flow control quota of the group, or the
          maximum available quota for any period while flow control is
          enabled. A value of 0 implies that there is no maximum quota
          set. The value of this system variable cannot be smaller than
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_min_quota">
       <code class="literal">
        group_replication_flow_control_min_quota
       </code>
      </a>
      and
      <code class="literal">
       group_replication_flow_control_min_recovery_quota
      </code>
      .
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_flow_control_member_quota_percent">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_member_quota_percent">
       <code class="literal">
        group_replication_flow_control_member_quota_percent
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045130034704">
     </a>
     <a class="indexterm" name="idm46045130033664">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_flow_control_member_quota_percent">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-flow-control-member-quota-percent=#
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_member_quota_percent">
            group_replication_flow_control_member_quota_percent
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Integer
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           0
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Minimum Value
         </th>
         <td>
          <code class="literal">
           0
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Maximum Value
         </th>
         <td>
          <code class="literal">
           100
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Unit
         </th>
         <td>
          percentage
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, and the change takes effect
          immediately.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_member_quota_percent">
       <code class="literal">
        group_replication_flow_control_member_quota_percent
       </code>
      </a>
      defines the percentage of the quota that a member should
          assume is available for itself when calculating the quotas. A
          value of 0 implies that the quota should be split equally
          between members that were writers in the last period.
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_flow_control_min_quota">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_min_quota">
       <code class="literal">
        group_replication_flow_control_min_quota
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045129999824">
     </a>
     <a class="indexterm" name="idm46045129998784">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_flow_control_min_quota">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-flow-control-min-quota=#
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_min_quota">
            group_replication_flow_control_min_quota
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Integer
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           0
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Minimum Value
         </th>
         <td>
          <code class="literal">
           0
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Maximum Value
         </th>
         <td>
          <code class="literal">
           2147483647
          </code>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, and the change takes effect
          immediately.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_min_quota">
       <code class="literal">
        group_replication_flow_control_min_quota
       </code>
      </a>
      controls the lowest flow control quota that can be assigned to
          a member, independently of the calculated minimum quota
          executed in the last period. A value of 0 implies that there
          is no minimum quota. The value of this system variable cannot
          be larger than
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_max_quota">
       <code class="literal">
        group_replication_flow_control_max_quota
       </code>
      </a>
      .
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_flow_control_min_recovery_quota">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_min_recovery_quota">
       <code class="literal">
        group_replication_flow_control_min_recovery_quota
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045129965616">
     </a>
     <a class="indexterm" name="idm46045129964576">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_flow_control_min_recovery_quota">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-flow-control-min-recovery-quota=#
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_min_recovery_quota">
            group_replication_flow_control_min_recovery_quota
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Integer
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           0
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Minimum Value
         </th>
         <td>
          <code class="literal">
           0
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Maximum Value
         </th>
         <td>
          <code class="literal">
           2147483647
          </code>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, and the change takes effect
          immediately.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_min_recovery_quota">
       <code class="literal">
        group_replication_flow_control_min_recovery_quota
       </code>
      </a>
      controls the lowest quota that can be assigned to a member
          because of another recovering member in the group,
          independently of the calculated minimum quota executed in the
          last period. A value of 0 implies that there is no minimum
          quota. The value of this system variable cannot be larger than
      <code class="literal">
       group_replication_flow_control_max_quota
      </code>
      .
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_flow_control_mode">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_mode">
       <code class="literal">
        group_replication_flow_control_mode
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045129931888">
     </a>
     <a class="indexterm" name="idm46045129930848">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_flow_control_mode">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-flow-control-mode=value
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_mode">
            group_replication_flow_control_mode
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Enumeration
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           QUOTA
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Valid Values
         </th>
         <td>
          <p class="valid-value">
           <code class="literal">
            DISABLED
           </code>
          </p>
          <p class="valid-value">
           <code class="literal">
            QUOTA
           </code>
          </p>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, and the change takes effect
          immediately.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_mode">
       <code class="literal">
        group_replication_flow_control_mode
       </code>
      </a>
      specifies the mode used for flow control.
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_flow_control_period">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_period">
       <code class="literal">
        group_replication_flow_control_period
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045129900448">
     </a>
     <a class="indexterm" name="idm46045129899408">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_flow_control_period">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-flow-control-period=#
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_period">
            group_replication_flow_control_period
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Integer
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           1
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Minimum Value
         </th>
         <td>
          <code class="literal">
           1
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Maximum Value
         </th>
         <td>
          <code class="literal">
           60
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Unit
         </th>
         <td>
          seconds
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, and the change takes effect
          immediately.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_period">
       <code class="literal">
        group_replication_flow_control_period
       </code>
      </a>
      defines how many seconds to wait between flow control
          iterations, in which flow control messages are sent and flow
          control management tasks are run.
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_flow_control_release_percent">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_release_percent">
       <code class="literal">
        group_replication_flow_control_release_percent
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045129865872">
     </a>
     <a class="indexterm" name="idm46045129864752">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_flow_control_release_percent">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-flow-control-release-percent=#
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_release_percent">
            group_replication_flow_control_release_percent
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Integer
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           50
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Minimum Value
         </th>
         <td>
          <code class="literal">
           0
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Maximum Value
         </th>
         <td>
          <code class="literal">
           1000
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Unit
         </th>
         <td>
          percentage
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, and the change takes effect
          immediately.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_flow_control_release_percent">
       <code class="literal">
        group_replication_flow_control_release_percent
       </code>
      </a>
      defines how the group quota should be released when flow
          control no longer needs to throttle the writer members, with
          this percentage being the quota increase per flow control
          period. A value of 0 implies that once the flow control
          thresholds are within limits the quota is released in a single
          flow control iteration. The range allows the quota to be
          released at up to 10 times current quota, as that allows a
          greater degree of adaptation, mainly when the flow control
          period is large and the quotas are very small.
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_force_members">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_force_members">
       <code class="literal">
        group_replication_force_members
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045129830768">
     </a>
     <a class="indexterm" name="idm46045129829664">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_force_members">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-force-members=value
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_force_members">
            group_replication_force_members
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          String
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      This system variable is used to force a new group membership.
          The value of this system variable can be changed while Group
          Replication is running, and the change takes effect
          immediately. You only need to set the value of the system
          variable on one of the group members that is to remain in the
          group. For details of the situation in which you might need to
          force a new group membership, and a procedure to follow when
          using this system variable, see
      <a class="xref" href="group-replication-network-partitioning.html" title="20.7.8 Handling a Network Partition and Loss of Quorum">
       Section 20.7.8, “Handling a Network Partition and Loss of Quorum”
      </a>
      .
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_force_members">
       <code class="literal">
        group_replication_force_members
       </code>
      </a>
      specifies a list of peer addresses as a comma separated list,
          such as
      <code class="literal">
       host1:port1
      </code>
      ,
      <code class="literal">
       host2:port2
      </code>
      .
          Any existing members that are not included in the list do not
          receive a new view of the group and are blocked. For each
          existing member that is to continue as a member, you must
          include the IP address or host name and the port, as they are
          given in the
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_local_address">
       <code class="literal">
        group_replication_local_address
       </code>
      </a>
      system variable for each member. An IPv6 address must be
          specified in square brackets. For example:
     </p>
     <div class="copytoclipboard-wrapper">
      <pre class="programlisting one-line language-simple"><div class="docs-select-all right" id="sa71199334"><div class="copy-help left">Press ⌘+C to copy</div> <div class="right"><button class="clipboard-btn" title="Copy to Clipboard"><span class="icon-clipboard"></span></button></div></div><code class="language-simple">"198<span class="token punctuation">.</span>51<span class="token punctuation">.</span>100<span class="token punctuation">.</span>44<span class="token operator">:</span>33061<span class="token punctuation">,</span><span class="token punctuation">[</span>2001<span class="token operator">:</span>db8<span class="token operator">:</span>85a3<span class="token operator">:</span>8d3<span class="token operator">:</span>1319<span class="token operator">:</span>8a2e<span class="token operator">:</span>370<span class="token operator">:</span>7348<span class="token punctuation">]</span><span class="token operator">:</span>33061<span class="token punctuation">,</span>example<span class="token punctuation">.</span>org<span class="token operator">:</span>33061"</code></pre>
     </div>
     <p>
      The group communication engine for Group Replication (XCom)
          checks that the supplied IP addresses are in a valid format,
          and checks that you have not included any group members that
          are currently unreachable. Otherwise, the new configuration is
          not validated, so you must be careful to include only online
          servers that are reachable members of the group. Any incorrect
          values or invalid host names in the list could cause the group
          to be blocked with an invalid configuration.
     </p>
     <p>
      It is important before forcing a new membership configuration
          to ensure that the servers to be excluded have been shut down.
          If they are not, shut them down before proceeding. Group
          members that are still online can automatically form new
          configurations, and if this has already taken place, forcing a
          further new configuration could create an artificial
          split-brain situation for the group.
     </p>
     <p>
      After you have used the
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_force_members">
       <code class="literal">
        group_replication_force_members
       </code>
      </a>
      system variable to successfully force a new group membership
          and unblock the group, ensure that you clear the system
          variable.
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_force_members">
       <code class="literal">
        group_replication_force_members
       </code>
      </a>
      must be empty in order to issue a
      <a class="link" href="start-group-replication.html" title="15.4.3.1 START GROUP_REPLICATION Statement">
       <code class="literal">
        START
          GROUP_REPLICATION
       </code>
      </a>
      statement.
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_group_name">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_group_name">
       <code class="literal">
        group_replication_group_name
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045129794128">
     </a>
     <a class="indexterm" name="idm46045129793024">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_group_name">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-group-name=value
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_group_name">
            group_replication_group_name
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          String
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable cannot be changed while
          Group Replication is running.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_group_name">
       <code class="literal">
        group_replication_group_name
       </code>
      </a>
      specifies the name of the group which this server instance
          belongs to, which must be a valid UUID. This UUID forms part
          of the GTIDs that are used when transactions received by group
          members from clients, and view change events that are
          generated internally by the group members, are written to the
          binary log.
     </p>
     <div class="important" style="margin-left: 0.5in; margin-right: 0.5in;">
      <div class="admon-title">
       Important
      </div>
      <p>
       A unique UUID must be used.
      </p>
     </div>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_group_seeds">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_group_seeds">
       <code class="literal">
        group_replication_group_seeds
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045129767904">
     </a>
     <a class="indexterm" name="idm46045129766800">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_group_seeds">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-group-seeds=value
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_group_seeds">
            group_replication_group_seeds
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          String
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, but the change takes effect only after
          you stop and restart Group Replication on the group member.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_group_seeds">
       <code class="literal">
        group_replication_group_seeds
       </code>
      </a>
      is a list of group members to which a joining member can
          connect to obtain details of all the current group members.
          The joining member uses these details to select and connect to
          a group member to obtain the data needed for synchrony with
          the group. The list consists of a single internal network
          address or host name for each included seed member, as
          configured in the seed member's
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_local_address">
       <code class="literal">
        group_replication_local_address
       </code>
      </a>
      system variable (not the seed member's SQL client connection,
          as specified by MySQL Server's
      <a class="link" href="server-system-variables.html#sysvar_hostname">
       <code class="literal">
        hostname
       </code>
      </a>
      and
      <a class="link" href="server-system-variables.html#sysvar_port">
       <code class="literal">
        port
       </code>
      </a>
      system variables). The
          addresses of the seed members are specified as a comma
          separated list, such as
      <code class="literal">
       host1:port1
      </code>
      ,
      <code class="literal">
       host2:port2
      </code>
      .
          An IPv6 address must be specified in square brackets. For
          example:
     </p>
     <div class="copytoclipboard-wrapper">
      <pre class="programlisting one-line language-simple"><div class="docs-select-all right" id="sa42911683"><div class="copy-help left">Press ⌘+C to copy</div> <div class="right"><button class="clipboard-btn" title="Copy to Clipboard"><span class="icon-clipboard"></span></button></div></div><code class="language-simple">group_replication_group_seeds<span class="token operator">=</span> "198<span class="token punctuation">.</span>51<span class="token punctuation">.</span>100<span class="token punctuation">.</span>44<span class="token operator">:</span>33061<span class="token punctuation">,</span><span class="token punctuation">[</span>2001<span class="token operator">:</span>db8<span class="token operator">:</span>85a3<span class="token operator">:</span>8d3<span class="token operator">:</span>1319<span class="token operator">:</span>8a2e<span class="token operator">:</span>370<span class="token operator">:</span>7348<span class="token punctuation">]</span><span class="token operator">:</span>33061<span class="token punctuation">,</span> example<span class="token punctuation">.</span>org<span class="token operator">:</span>33061"</code></pre>
     </div>
     <p>
      Note that the value you specify for this variable is not
          validated until a
      <a class="link" href="start-group-replication.html" title="15.4.3.1 START GROUP_REPLICATION Statement">
       <code class="literal">
        START
          GROUP_REPLICATION
       </code>
      </a>
      statement is issued and the Group
          Communication System (GCS) is available.
     </p>
     <p>
      Usually this list consists of all members of the group, but
          you can choose a subset of the group members to be seeds. The
          list must contain at least one valid member address. Each
          address is validated when starting Group Replication. If the
          list does not contain any valid member addresses, issuing
      <a class="link" href="start-group-replication.html" title="15.4.3.1 START GROUP_REPLICATION Statement">
       <code class="literal">
        START GROUP_REPLICATION
       </code>
      </a>
      fails.
     </p>
     <p>
      When a server is joining a replication group, it attempts to
          connect to the first seed member listed in its
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_group_seeds">
       <code class="literal">
        group_replication_group_seeds
       </code>
      </a>
      system variable. If the connection is refused, the joining
          member tries to connect to each of the other seed members in
          the list in order. If the joining member connects to a seed
          member but does not get added to the replication group as a
          result (for example, because the seed member does not have the
          joining member's address in its allowlist and closes the
          connection), the joining member continues to try the remaining
          seed members in the list in order.
     </p>
     <p>
      A joining member must communicate with the seed member using
          the same protocol (IPv4 or IPv6) that the seed member
          advertises in the
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_group_seeds">
       <code class="literal">
        group_replication_group_seeds
       </code>
      </a>
      option. For the purpose of IP address permissions for Group
          Replication, the allowlist on the seed member must include an
          IP address for the joining member for the protocol offered by
          the seed member, or a host name that resolves to an address
          for that protocol. This address or host name must be set up
          and permitted in addition to the joining member's
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_local_address">
       <code class="literal">
        group_replication_local_address
       </code>
      </a>
      if the protocol for that address does not match the seed
          member's advertised protocol. If a joining member does not
          have a permitted address for the appropriate protocol, its
          connection attempt is refused. For more information, see
      <a class="xref" href="group-replication-ip-address-permissions.html" title="20.6.4 Group Replication IP Address Permissions">
       Section 20.6.4, “Group Replication IP Address Permissions”
      </a>
      .
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_gtid_assignment_block_size">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_gtid_assignment_block_size">
       <code class="literal">
        group_replication_gtid_assignment_block_size
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045129725056">
     </a>
     <a class="indexterm" name="idm46045129723936">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_gtid_assignment_block_size">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-gtid-assignment-block-size=#
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_gtid_assignment_block_size">
            group_replication_gtid_assignment_block_size
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Integer
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           1000000
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Minimum Value
         </th>
         <td>
          <code class="literal">
           1
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Maximum Value (64-bit platforms)
         </th>
         <td>
          <code class="literal">
           9223372036854775807
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Maximum Value (32-bit platforms)
         </th>
         <td>
          <code class="literal">
           4294967295
          </code>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
      <div class="admon-title">
       Note
      </div>
      <p>
       This system variable is a group-wide configuration setting,
            and a full reboot of the replication group is required for a
            change to take effect.
      </p>
     </div>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_gtid_assignment_block_size">
       <code class="literal">
        group_replication_gtid_assignment_block_size
       </code>
      </a>
      specifies the number of consecutive GTIDs that are reserved
          for each group member. Each member consumes its own blocks and
          reserves more when needed.
     </p>
     <p>
      This system variable is a group-wide configuration setting. It
          must have the same value on all group members, cannot be
          changed while Group Replication is running, and requires a
          full reboot of the group (a bootstrap by a server with
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_bootstrap_group">
       <code class="literal">
        group_replication_bootstrap_group=ON
       </code>
      </a>
      )
          in order for the value change to take effect. For instructions
          to safely bootstrap a group where transactions have been
          executed and certified, see
      <a class="xref" href="group-replication-restarting-group.html" title="20.5.2 Restarting a Group">
       Section 20.5.2, “Restarting a Group”
      </a>
      .
     </p>
     <p>
      If the group has a value set for this system variable, and a
          joining member has a different value set for the system
          variable, the joining member cannot join the group until the
          value is changed to match. If the group members have a value
          set for this system variable, and the joining member does not
          support the system variable, it cannot join the group.
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_ip_allowlist">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_ip_allowlist">
       <code class="literal">
        group_replication_ip_allowlist
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045129685792">
     </a>
     <a class="indexterm" name="idm46045129684704">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_ip_allowlist">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-ip-allowlist=value
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_ip_allowlist">
            group_replication_ip_allowlist
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          String
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           AUTOMATIC
          </code>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_ip_allowlist">
       <code class="literal">
        group_replication_ip_allowlist
       </code>
      </a>
      specifies which hosts are permitted to connect to the group.
          When the XCom communication stack is in use for the group
          (
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_communication_stack">
       <code class="literal">
        group_replication_communication_stack=XCOM
       </code>
      </a>
      ),
          the allowlist is used to control access to the group. When the
          MySQL communication stack is in use for the group
          (
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_communication_stack">
       <code class="literal">
        group_replication_communication_stack=MYSQL
       </code>
      </a>
      ),
          user authentication is used to control access to the group,
          and the allowlist is not used and is ignored if set.
     </p>
     <p>
      The address that you specify for each group member in
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_local_address">
       <code class="literal">
        group_replication_local_address
       </code>
      </a>
      must be permitted on the other servers in the replication
          group. Note that the value you specify for this variable is
          not validated until a
      <a class="link" href="start-group-replication.html" title="15.4.3.1 START GROUP_REPLICATION Statement">
       <code class="literal">
        START
          GROUP_REPLICATION
       </code>
      </a>
      statement is issued and the Group
          Communication System (GCS) is available.
     </p>
     <p>
      By default, this system variable is set to
      <code class="literal">
       AUTOMATIC
      </code>
      , which permits connections from
          private subnetworks active on the host. The group
          communication engine for Group Replication (XCom)
          automatically scans active interfaces on the host, and
          identifies those with addresses on private subnetworks. These
          addresses and the
      <code class="literal">
       localhost
      </code>
      IP address for
          IPv4 and IPv6 are used to create the Group Replication
          allowlist. For a list of the ranges from which addresses are
          automatically permitted, see
      <a class="xref" href="group-replication-ip-address-permissions.html" title="20.6.4 Group Replication IP Address Permissions">
       Section 20.6.4, “Group Replication IP Address Permissions”
      </a>
      .
     </p>
     <p>
      The automatic allowlist of private addresses cannot be used
          for connections from servers outside the private network. For
          Group Replication connections between server instances that
          are on different machines, you must provide public IP
          addresses and specify these as an explicit allowlist. If you
          specify any entries for the allowlist, the private addresses
          are not added automatically, so if you use any of these, you
          must specify them explicitly. The
      <code class="literal">
       localhost
      </code>
      IP addresses are added automatically.
     </p>
     <p>
      As the value of the
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_ip_allowlist">
       <code class="literal">
        group_replication_ip_allowlist
       </code>
      </a>
      option, you can specify any combination of the following:
     </p>
     <div class="itemizedlist">
      <ul class="itemizedlist" style="list-style-type: circle; ">
       <li class="listitem">
        <p>
         IPv4 addresses (for example,
         <code class="literal">
          198.51.100.44
         </code>
         )
        </p>
       </li>
       <li class="listitem">
        <p>
         IPv4 addresses with CIDR notation (for example,
         <code class="literal">
          192.0.2.21/24
         </code>
         )
        </p>
       </li>
       <li class="listitem">
        <p>
         IPv6 addresses (for example,
         <code class="literal">
          2001:db8:85a3:8d3:1319:8a2e:370:7348
         </code>
         )
        </p>
       </li>
       <li class="listitem">
        <p>
         IPv6 addresses using CIDR notation (for example,
         <code class="literal">
          2001:db8:85a3:8d3::/64
         </code>
         )
        </p>
       </li>
       <li class="listitem">
        <p>
         Host names (for example,
         <code class="literal">
          example.org
         </code>
         )
        </p>
       </li>
       <li class="listitem">
        <p>
         Host names with CIDR notation (for example,
         <code class="literal">
          www.example.com/24
         </code>
         )
        </p>
       </li>
      </ul>
     </div>
     <p>
      Host names can resolve to IPv4 addresses, IPv6 addresses, or
          both. If a host name resolves to both an IPv4 and an IPv6
          address, the IPv4 address is always used for Group Replication
          connections. You can use CIDR notation in combination with
          host names or IP addresses to permit a block of IP addresses
          with a particular network prefix, but you should ensure that
          all the IP addresses in the specified subnet are under your
          control.
     </p>
     <p>
      A comma must separate each entry in the allowlist. For
          example:
     </p>
     <div class="copytoclipboard-wrapper">
      <pre class="programlisting one-line language-none"><div class="docs-select-all right" id="sa63929790"><div class="copy-help left">Press ⌘+C to copy</div> <div class="right"><button class="clipboard-btn" title="Copy to Clipboard"><span class="icon-clipboard"></span></button></div></div><code class="language-none">"192.0.2.21/24,198.51.100.44,203.0.113.0/24,2001:db8:85a3:8d3:1319:8a2e:370:7348,example.org,www.example.com/24"</code></pre>
     </div>
     <p>
      If any of the seed members for the group are listed in the
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_group_seeds">
       <code class="literal">
        group_replication_group_seeds
       </code>
      </a>
      option with an IPv6 address when a joining member has an IPv4
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_local_address">
       <code class="literal">
        group_replication_local_address
       </code>
      </a>
      ,
          or the reverse, you must also set up and permit an alternative
          address for the joining member for the protocol offered by the
          seed member (or a host name that resolves to an address for
          that protocol). For more information, see
      <a class="xref" href="group-replication-ip-address-permissions.html" title="20.6.4 Group Replication IP Address Permissions">
       Section 20.6.4, “Group Replication IP Address Permissions”
      </a>
      .
     </p>
     <p>
      It is possible to configure different allowlists on different
          group members according to your security requirements, for
          example, in order to keep different subnets separate. However,
          this can cause issues when a group is reconfigured. If you do
          not have a specific security requirement to do otherwise, use
          the same allowlist on all members of a group. For more
          details, see
      <a class="xref" href="group-replication-ip-address-permissions.html" title="20.6.4 Group Replication IP Address Permissions">
       Section 20.6.4, “Group Replication IP Address Permissions”
      </a>
      .
     </p>
     <p>
      For host names, name resolution takes place only when a
          connection request is made by another server. A host name that
          cannot be resolved is not considered for allowlist validation,
          and a warning message is written to the error log.
          Forward-confirmed reverse DNS (FCrDNS) verification is carried
          out for resolved host names.
     </p>
     <div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
      <div class="admon-title">
       Warning
      </div>
      <p>
       Host names are inherently less secure than IP addresses in
            an allowlist. FCrDNS verification provides a good level of
            protection, but can be compromised by certain types of
            attack. Specify host names in your allowlist only when
            strictly necessary, and ensure that all components used for
            name resolution, such as DNS servers, are maintained under
            your control. You can also implement name resolution locally
            using the hosts file, to avoid the use of external
            components.
      </p>
     </div>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_local_address">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_local_address">
       <code class="literal">
        group_replication_local_address
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045129625792">
     </a>
     <a class="indexterm" name="idm46045129624688">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_local_address">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-local-address=value
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_local_address">
            group_replication_local_address
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          String
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, but the change takes effect only after
          you stop and restart Group Replication on the group member.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_local_address">
       <code class="literal">
        group_replication_local_address
       </code>
      </a>
      sets the network address which the member provides for
          connections from other members, specified as a
      <code class="literal">
       host:port
      </code>
      formatted string. This address
          must be reachable by all members of the group because it is
          used by the group communication engine for Group Replication
          (XCom, a Paxos variant) for TCP communication between remote
          XCom instances. If you are using the MySQL communication stack
          to establish group communication connections between members
          (
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_communication_stack">
       <code class="literal">
        group_replication_communication_stack
       </code>
      </a>
      = MYSQL), the address must be one of the IP addresses and
          ports where MySQL Server is listening on, as specified by the
      <a class="link" href="server-system-variables.html#sysvar_bind_address">
       <code class="literal">
        bind_address
       </code>
      </a>
      system variable
          for the server.
     </p>
     <div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
      <div class="admon-title">
       Warning
      </div>
      <p>
       Do not use this address to query or administer the databases
            on the member. This is not the SQL client connection host
            and port.
      </p>
     </div>
     <p>
      The address or host name that you specify in
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_local_address">
       <code class="literal">
        group_replication_local_address
       </code>
      </a>
      is used by Group Replication as the unique identifier for a
          group member within the replication group. You can use the
          same port for all members of a replication group as long as
          the host names or IP addresses are all different, and you can
          use the same host name or IP address for all members as long
          as the ports are all different. The recommended port for
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_local_address">
       <code class="literal">
        group_replication_local_address
       </code>
      </a>
      is 33061. Note that the value you specify for this variable is
          not validated until the
      <a class="link" href="start-group-replication.html" title="15.4.3.1 START GROUP_REPLICATION Statement">
       <code class="literal">
        START
          GROUP_REPLICATION
       </code>
      </a>
      statement is issued and the Group
          Communication System (GCS) is available.
     </p>
     <p>
      The network address configured by
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_local_address">
       <code class="literal">
        group_replication_local_address
       </code>
      </a>
      must be resolvable by all group members. For example, if each
          server instance is on a different machine with a fixed network
          address, you could use the IP address of the machine, such as
          10.0.0.1. If you use a host name, you must use a fully
          qualified name, and ensure it is resolvable through DNS,
          correctly configured
      <code class="literal">
       /etc/hosts
      </code>
      files, or
          other name resolution processes. An IPv6 address must be
          specified in square brackets in order to distinguish the port
          number, for example:
     </p>
     <div class="copytoclipboard-wrapper">
      <pre class="programlisting one-line language-simple"><div class="docs-select-all right" id="sa16587710"><div class="copy-help left">Press ⌘+C to copy</div> <div class="right"><button class="clipboard-btn" title="Copy to Clipboard"><span class="icon-clipboard"></span></button></div></div><code class="language-simple">group_replication_local_address<span class="token operator">=</span> "<span class="token punctuation">[</span>2001<span class="token operator">:</span>db8<span class="token operator">:</span>85a3<span class="token operator">:</span>8d3<span class="token operator">:</span>1319<span class="token operator">:</span>8a2e<span class="token operator">:</span>370<span class="token operator">:</span>7348<span class="token punctuation">]</span><span class="token operator">:</span>33061"</code></pre>
     </div>
     <p>
      If a host name specified as the Group Replication local
          address for a server instance resolves to both an IPv4 and an
          IPv6 address, the IPv4 address is always used for Group
          Replication connections. For more information on Group
          Replication support for IPv6 networks and on replication
          groups with a mix of members using IPv4 and members using
          IPv6, see
      <a class="xref" href="group-replication-ipv6.html" title="20.5.5 Support For IPv6 And For Mixed IPv6 And IPv4 Groups">
       Section 20.5.5, “Support For IPv6 And For Mixed IPv6 And IPv4 Groups”
      </a>
      .
     </p>
     <p>
      If you are using the XCom communication stack to establish
          group communication connections between members
          (
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_communication_stack">
       <code class="literal">
        group_replication_communication_stack
          = XCOM
       </code>
      </a>
      ), the address that you specify for each group
          member in
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_local_address">
       <code class="literal">
        group_replication_local_address
       </code>
      </a>
      must be added to the list for the
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_ip_allowlist">
       <code class="literal">
        group_replication_ip_allowlist
       </code>
      </a>
      system variable on the other servers in the replication group.
          When the XCom communication stack is in use for the group, the
          allowlist is used to control access to the group. When the
          MySQL communication stack is in use for the group, user
          authentication is used to control access to the group, and the
          allowlist is not used and is ignored if set. If any of the
          seed members for the group are listed in
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_group_seeds">
       <code class="literal">
        group_replication_group_seeds
       </code>
      </a>
      with an IPv6 address when this member has an IPv4
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_local_address">
       <code class="literal">
        group_replication_local_address
       </code>
      </a>
      ,
          or the reverse, you must also set up and permit an alternative
          address for this member for the required protocol (or a host
          name that resolves to an address for that protocol). For more
          information, see
      <a class="xref" href="group-replication-ip-address-permissions.html" title="20.6.4 Group Replication IP Address Permissions">
       Section 20.6.4, “Group Replication IP Address Permissions”
      </a>
      .
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_member_expel_timeout">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_member_expel_timeout">
       <code class="literal">
        group_replication_member_expel_timeout
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045129576688">
     </a>
     <a class="indexterm" name="idm46045129575648">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_member_expel_timeout">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-member-expel-timeout=#
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_member_expel_timeout">
            group_replication_member_expel_timeout
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Integer
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           5
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Minimum Value
         </th>
         <td>
          <code class="literal">
           0
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Maximum Value
         </th>
         <td>
          <code class="literal">
           3600
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Unit
         </th>
         <td>
          seconds
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, and the change takes effect
          immediately. The current value of the system variable is read
          whenever Group Replication checks the timeout. It is not
          mandatory for all members of a group to have the same setting,
          but it is recommended in order to avoid unexpected expulsions.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_member_expel_timeout">
       <code class="literal">
        group_replication_member_expel_timeout
       </code>
      </a>
      specifies the period of time in seconds that a Group
          Replication group member waits after creating a suspicion,
          before expelling from the group the member suspected of having
          failed. The initial 5-second detection period before a
          suspicion is created does not count as part of this time. The
          value of
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_member_expel_timeout">
       <code class="literal">
        group_replication_member_expel_timeout
       </code>
      </a>
      defaults to 5, meaning that a suspected member is liable for
          expulsion 5 seconds after the 5-second detection period.
     </p>
     <p>
      Changing the value of
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_member_expel_timeout">
       <code class="literal">
        group_replication_member_expel_timeout
       </code>
      </a>
      on a group member takes effect immediately for existing as
          well as future suspicions on that group member. You can
          therefore use this as a method to force a suspicion to time
          out and expel a suspected member, allowing changes to the
          group configuration. For more information, see
      <a class="xref" href="group-replication-responses-failure-expel.html" title="20.7.7.1 Expel Timeout">
       Section 20.7.7.1, “Expel Timeout”
      </a>
      .
     </p>
     <p>
      Increasing the value of
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_member_expel_timeout">
       <code class="literal">
        group_replication_member_expel_timeout
       </code>
      </a>
      can help to avoid unnecessary expulsions on slower or less
          stable networks, or in the case of expected transient network
          outages or machine slowdowns. If a suspect member becomes
          active again before the suspicion times out, it applies all
          the messages that were buffered by the remaining group members
          and enters
      <code class="literal">
       ONLINE
      </code>
      state, without operator
          intervention. You can specify a timeout value up to a maximum
          of 3600 seconds (1 hour). It is important to ensure that
          XCom's message cache is sufficiently large to contain the
          expected volume of messages in your specified time period,
          plus the initial 5-second detection period, otherwise members
          are unable to reconnect. You can adjust the cache size limit
          using the
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_message_cache_size">
       <code class="literal">
        group_replication_message_cache_size
       </code>
      </a>
      system variable. For more information, see
      <a class="xref" href="group-replication-performance-xcom-cache.html" title="20.7.6 XCom Cache Management">
       Section 20.7.6, “XCom Cache Management”
      </a>
      .
     </p>
     <p>
      If the timeout is exceeded, the suspect member is liable for
          expulsion immediately after the suspicion times out. If the
          member is able to resume communications and receives a view
          where it is expelled, and the member has the
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_autorejoin_tries">
       <code class="literal">
        group_replication_autorejoin_tries
       </code>
      </a>
      system variable set to specify a number of auto-rejoin
          attempts, it proceeds to make the specified number of attempts
          to rejoin the group while in super read only mode. If the
          member does not have any auto-rejoin attempts specified, or if
          it has exhausted the specified number of attempts, it follows
          the action specified by the system variable
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_exit_state_action">
       <code class="literal">
        group_replication_exit_state_action
       </code>
      </a>
      .
     </p>
     <p>
      For more information on using the
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_member_expel_timeout">
       <code class="literal">
        group_replication_member_expel_timeout
       </code>
      </a>
      setting, see
      <a class="xref" href="group-replication-responses-failure-expel.html" title="20.7.7.1 Expel Timeout">
       Section 20.7.7.1, “Expel Timeout”
      </a>
      .
          For alternative mitigation strategies to avoid unnecessary
          expulsions where this system variable is not available, see
      <a class="xref" href="group-replication-limitations.html" title="20.3.2 Group Replication Limitations">
       Section 20.3.2, “Group Replication Limitations”
      </a>
      .
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_member_weight">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_member_weight">
       <code class="literal">
        group_replication_member_weight
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045129524960">
     </a>
     <a class="indexterm" name="idm46045129523856">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_member_weight">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-member-weight=#
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_member_weight">
            group_replication_member_weight
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Integer
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           50
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Minimum Value
         </th>
         <td>
          <code class="literal">
           0
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Maximum Value
         </th>
         <td>
          <code class="literal">
           100
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Unit
         </th>
         <td>
          percentage
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, and the change takes effect
          immediately. The system variable's current value is read when
          a failover situation occurs.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_member_weight">
       <code class="literal">
        group_replication_member_weight
       </code>
      </a>
      specifies a percentage weight that can be assigned to members
          to influence the chance of the member being elected as primary
          in the event of failover, for example when the existing
          primary leaves a single-primary group. Assign numeric weights
          to members to ensure that specific members are elected, for
          example during scheduled maintenance of the primary or to
          ensure certain hardware is prioritized in the event of
          failover.
     </p>
     <p>
      For a group with members configured as follows:
     </p>
     <div class="itemizedlist">
      <ul class="itemizedlist" style="list-style-type: circle; ">
       <li class="listitem">
        <p>
         <code class="literal">
          member-1
         </code>
         :
              group_replication_member_weight=30, server_uuid=aaaa
        </p>
       </li>
       <li class="listitem">
        <p>
         <code class="literal">
          member-2
         </code>
         :
              group_replication_member_weight=40, server_uuid=bbbb
        </p>
       </li>
       <li class="listitem">
        <p>
         <code class="literal">
          member-3
         </code>
         :
              group_replication_member_weight=40, server_uuid=cccc
        </p>
       </li>
       <li class="listitem">
        <p>
         <code class="literal">
          member-4
         </code>
         :
              group_replication_member_weight=40, server_uuid=dddd
        </p>
       </li>
      </ul>
     </div>
     <p>
      during election of a new primary the members above would be
          sorted as
      <code class="literal">
       member-2
      </code>
      ,
      <code class="literal">
       member-3
      </code>
      ,
      <code class="literal">
       member-4
      </code>
      , and
      <code class="literal">
       member-1
      </code>
      . This results in
      <code class="literal">
       member
      </code>
      -2 being chosen as the new primary in
          the event of failover. For more information, see
      <a class="xref" href="group-replication-single-primary-mode.html" title="20.1.3.1 Single-Primary Mode">
       Section 20.1.3.1, “Single-Primary Mode”
      </a>
      .
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_message_cache_size">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_message_cache_size">
       <code class="literal">
        group_replication_message_cache_size
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045129477936">
     </a>
     <a class="indexterm" name="idm46045129476896">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_message_cache_size">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-message-cache-size=#
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_message_cache_size">
            group_replication_message_cache_size
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Integer
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           1073741824 (1 GB)
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Minimum Value
         </th>
         <td>
          <code class="literal">
           134217728 (128 MB)
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Maximum Value (64-bit platforms)
         </th>
         <td>
          <code class="literal">
           18446744073709551615 (16 EiB)
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Maximum Value (32-bit platforms)
         </th>
         <td>
          <code class="literal">
           315360004294967295 (4 GB)
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Unit
         </th>
         <td>
          bytes
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      This system variable should have the same value on all group
          members. The value of this system variable can be changed
          while Group Replication is running. The change takes effect on
          each group member after you stop and restart Group Replication
          on the member. During this process, the value of the system
          variable is permitted to differ between group members, but
          members might be unable to reconnect in the event of a
          disconnection.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_message_cache_size">
       <code class="literal">
        group_replication_message_cache_size
       </code>
      </a>
      sets the maximum amount of memory that is available for the
          message cache in the group communication engine for Group
          Replication (XCom). The XCom message cache holds messages (and
          their metadata) that are exchanged between the group members
          as a part of the consensus protocol. Among other functions,
          the message cache is used for recovery of missed messages by
          members that reconnect with the group after a period where
          they were unable to communicate with the other group members.
     </p>
     <p>
      The
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_member_expel_timeout">
       <code class="literal">
        group_replication_member_expel_timeout
       </code>
      </a>
      system variable determines the waiting period (up to an hour)
          that is allowed in addition to the initial 5-second detection
          period for members to return to the group rather than being
          expelled. The size of the XCom message cache should be set
          with reference to the expected volume of messages in this time
          period, so that it contains all the missed messages required
          for members to return successfully. The default is a 5-second
          waiting period after the 5-second detection period, for a
          total time period of 10 seconds.
     </p>
     <p>
      Ensure that sufficient memory is available on your system for
          your chosen cache size limit, considering the size of the
          server's other caches and object pools. The default
          setting is 1073741824 bytes (1 GB). The minimum setting of
          134217728 bytes (128 MB) enables deployment on a host that has
          a restricted amount of available memory, and good network
          connectivity to minimize the frequency and duration of
          transient losses of connectivity for group members. Note that
          the limit set using
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_message_cache_size">
       <code class="literal">
        group_replication_message_cache_size
       </code>
      </a>
      applies only to the data stored in the cache, and the cache
          structures require an additional 50 MB of memory.
     </p>
     <p>
      The cache size limit can be increased or reduced dynamically
          at runtime. If you reduce the cache size limit, XCom removes
          the oldest entries that have been decided and delivered until
          the current size is below the limit. Group Replication's Group
          Communication System (GCS) alerts you, by a warning message,
          when a message that is likely to be needed for recovery by a
          member that is currently unreachable is removed from the
          message cache. For more information on tuning the message
          cache size, see
      <a class="xref" href="group-replication-performance-xcom-cache.html" title="20.7.6 XCom Cache Management">
       Section 20.7.6, “XCom Cache Management”
      </a>
      .
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_paxos_single_leader">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_paxos_single_leader">
       <code class="literal">
        group_replication_paxos_single_leader
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045129432832">
     </a>
     <a class="indexterm" name="idm46045129431792">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_paxos_single_leader">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-paxos-single-leader[={OFF|ON}]
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_paxos_single_leader">
            group_replication_paxos_single_leader
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Boolean
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           OFF
          </code>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
      <div class="admon-title">
       Note
      </div>
      <p>
       This system variable is a group-wide configuration setting,
            and a full reboot of the replication group is required for a
            change to take effect.
      </p>
     </div>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_paxos_single_leader">
       <code class="literal">
        group_replication_paxos_single_leader
       </code>
      </a>
      enables the group communication engine to operate with a
          single consensus leader when the group is in single-primary
          mode. With the default setting
      <code class="literal">
       OFF
      </code>
      , this
          behavior is disabled, and every member of the group is used as
          a leader, which is the behavior in releases before this system
          variable was available. When this variable is set to
      <code class="literal">
       ON
      </code>
      , the group communication engine can use
          a single leader to drive consensus. Operating with a single
          consensus leader improves performance and resilience in
          single-primary mode, particularly when some of the group’s
          secondary members are currently unreachable. For more
          information, see
      <a class="xref" href="group-replication-single-consensus-leader.html" title="20.7.3 Single Consensus Leader">
       Section 20.7.3, “Single Consensus Leader”
      </a>
      .
     </p>
     <p>
      In order for the group communication engine to use a single
          consensus leader, the group's communication protocol
          version must be MySQL 8.0.27 or later. Use
      <a class="link" href="group-replication-functions-for-communication-protocol.html#function_group-replication-get-communication-protocol">
       <code class="literal">
        group_replication_get_communication_protocol()
       </code>
      </a>
      to obtain the group's communication protocol version. If
          a lower version is in use, the group cannot use this behavior.
          You can use
      <a class="link" href="group-replication-functions-for-communication-protocol.html#function_group-replication-set-communication-protocol">
       <code class="literal">
        group_replication_set_communication_protocol()
       </code>
      </a>
      to set the communication protocol to a higher version if all
          group members support it. For more information, see
      <a class="xref" href="group-replication-communication-protocol.html" title="20.5.1.4 Setting a Group's Communication Protocol Version">
       Section 20.5.1.4, “Setting a Group's Communication Protocol Version”
      </a>
      .
     </p>
     <p>
      This system variable is a group-wide configuration setting. It
          must have the same value on all group members, cannot be
          changed while Group Replication is running, and requires a
          full reboot of the group (a bootstrap by a server with
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_bootstrap_group">
       <code class="literal">
        group_replication_bootstrap_group=ON
       </code>
      </a>
      )
          in order for the value change to take effect. For instructions
          to safely bootstrap a group where transactions have been
          executed and certified, see
      <a class="xref" href="group-replication-restarting-group.html" title="20.5.2 Restarting a Group">
       Section 20.5.2, “Restarting a Group”
      </a>
      .
     </p>
     <p>
      If the group has a value set for this system variable, and a
          joining member has a different value set for the system
          variable, the joining member cannot join the group until the
          value is changed to match. If the group members have a value
          set for this system variable, and the joining member does not
          support the system variable, it cannot join the group.
     </p>
     <p>
      The
      <code class="literal">
       WRITE_CONSENSUS_SINGLE_LEADER_CAPABLE
      </code>
      column of the Performance Schema table
      <a class="link" href="performance-schema-replication-group-communication-information-table.html" title="29.12.11.10 The replication_group_communication_information Table">
       <code class="literal">
        replication_group_communication_information
       </code>
      </a>
      shows whether the group supports the use of a single leader,
          even if
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_paxos_single_leader">
       <code class="literal">
        group_replication_paxos_single_leader
       </code>
      </a>
      is currently set to
      <code class="literal">
       OFF
      </code>
      on the queried
          member. The column value is 1 if the group was started with
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_paxos_single_leader">
       <code class="literal">
        group_replication_paxos_single_leader
       </code>
      </a>
      set to
      <code class="literal">
       ON
      </code>
      , and its communication protocol
          version is MySQL 8.0.27 or later.
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_poll_spin_loops">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_poll_spin_loops">
       <code class="literal">
        group_replication_poll_spin_loops
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045129386816">
     </a>
     <a class="indexterm" name="idm46045129385776">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_poll_spin_loops">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-poll-spin-loops=#
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_poll_spin_loops">
            group_replication_poll_spin_loops
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Integer
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           0
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Minimum Value
         </th>
         <td>
          <code class="literal">
           0
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Maximum Value (64-bit platforms)
         </th>
         <td>
          <code class="literal">
           18446744073709551615
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Maximum Value (32-bit platforms)
         </th>
         <td>
          <code class="literal">
           4294967295
          </code>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, but the change takes effect only after
          you stop and restart Group Replication on the group member.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_poll_spin_loops">
       <code class="literal">
        group_replication_poll_spin_loops
       </code>
      </a>
      specifies the number of times the group communication thread
          waits for the communication engine mutex to be released before
          the thread waits for more incoming network messages.
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_preemptive_garbage_collection">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_preemptive_garbage_collection">
       <code class="literal">
        group_replication_preemptive_garbage_collection
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045129351696">
     </a>
     <a class="indexterm" name="idm46045129350656">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_preemptive_garbage_collection">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-preemptive-garbage-collection[=ON|OFF]
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_preemptive_garbage_collection">
            group_replication_preemptive_garbage_collection
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Boolean
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           OFF
          </code>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      Enable preemptive garbage collection in single-primary mode
          (only), keeping only the write sets for those transactions
          that have not yet been committed in the database.
     </p>
     <p>
      In single-primary mode it is possible to clean up write sets
          for a given transaction earlier than in multi-primary mode;
          this is because conflicts are detected and handled by the
          database lock manager in the server while transactions are
          executing; thus, the write sets are useful only for
          calculating dependencies between transactions, and not for
          conflict detection. This means that write sets can be cleaned
          up as soon as the transaction to which they belong is tracked
          in the Group Replication transaction dependency and conflict
          detection module.
     </p>
     <p>
      The aggressive purging of write sets which is performed when
      <code class="literal">
       group_replication_preemptive_garbage_collection
      </code>
      is enabled has the following effects:
     </p>
     <div class="itemizedlist">
      <ul class="itemizedlist" style="list-style-type: circle; ">
       <li class="listitem">
        <p>
         Reduction in memory used to keep write sets in memory
        </p>
       </li>
       <li class="listitem">
        <p>
         Reduction of the impact of lagging secondaries on the
              tracking of write sets on the primary
        </p>
       </li>
       <li class="listitem">
        <p>
         Reduction of the amount of time that the write set
              database lock is held per round of write set deletion, and
              thus a reduction of its impact on throughput
        </p>
       </li>
      </ul>
     </div>
     <p>
      The value of
      <code class="literal">
       group_replication_preemptive_garbage_collection
      </code>
      can be changed only when Group Replication is not running, and
          has no effect on a group running in multi-primary mode. In
          addition, when this system variable is enabled, it is not
          possible to change between multi-primary mode and
          single-primary mode (see
      <a class="xref" href="group-replication-changing-group-mode.html" title="20.5.1.2 Changing the Group Mode">
       Section 20.5.1.2, “Changing the Group Mode”
      </a>
      ).
     </p>
     <p>
      <code class="literal">
       group_replication_preemptive_garbage_collection
      </code>
      must be set to the same value on all group members. A new
          joiner's
      <code class="literal">
       group_replication_preemptive_garbage_collection
      </code>
      value must be the same as those of all the group's
          current members, else it cannot join.
     </p>
     <p>
      A group member running a version of MySQL previous to 8.4.0
          sends no
      <code class="literal">
       group_replication_preemptive_garbage_collection
      </code>
      value; in such cases, the value is considered to be
      <code class="literal">
       OFF
      </code>
      .
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_preemptive_garbage_collection_rows_threshold">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_preemptive_garbage_collection_rows_threshold">
       <code class="literal">
        group_replication_preemptive_garbage_collection_rows_threshold
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045129313936">
     </a>
     <a class="indexterm" name="idm46045129312784">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_preemptive_garbage_collection_rows_threshold">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-preemptive-garbage-collection-rows-threshold=#
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_preemptive_garbage_collection_rows_threshold">
            group_replication_preemptive_garbage_collection_rows_threshold
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Integer
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           100000
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Minimum Value
         </th>
         <td>
          <code class="literal">
           10000
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Maximum Value
         </th>
         <td>
          <code class="literal">
           100000000
          </code>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      When preemptive garbage collection in single-primary mode is
          enabled
          (
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_preemptive_garbage_collection">
       <code class="literal">
        group_replication_preemptive_garbage_collection
       </code>
      </a>
      is
      <code class="literal">
       ON
      </code>
      ), this is the number of rows of
          certification information needed to trigger its use.
     </p>
     <p>
      This variable has no effect on a group running in
          multi-primary mode.
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_recovery_compression_algorithms">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_compression_algorithms">
       <code class="literal">
        group_replication_recovery_compression_algorithms
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045129280240">
     </a>
     <a class="indexterm" name="idm46045129279200">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_recovery_compression_algorithms">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-recovery-compression-algorithms=value
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_compression_algorithms">
            group_replication_recovery_compression_algorithms
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Set
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           uncompressed
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Valid Values
         </th>
         <td>
          <p class="valid-value">
           <code class="literal">
            zlib
           </code>
          </p>
          <p class="valid-value">
           <code class="literal">
            zstd
           </code>
          </p>
          <p class="valid-value">
           <code class="literal">
            uncompressed
           </code>
          </p>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      <code class="literal">
       group_replication_recovery_compression_algorithms
      </code>
      specifies the compression algorithms permitted for Group
          Replication distributed recovery connections for state
          transfer from a donor's binary log. The available
          algorithms are the same as for the
      <a class="link" href="server-system-variables.html#sysvar_protocol_compression_algorithms">
       <code class="literal">
        protocol_compression_algorithms
       </code>
      </a>
      system variable. For more information, see
      <a class="xref" href="connection-compression-control.html" title="6.2.8 Connection Compression Control">
       Section 6.2.8, “Connection Compression Control”
      </a>
      .
     </p>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, but the change takes effect only after
          you stop and restart Group Replication on the group member.
     </p>
     <p>
      This setting does not apply if the server has been set up to
          support cloning (see
      <a class="xref" href="group-replication-cloning.html" title="20.5.4.2 Cloning for Distributed Recovery">
       Section 20.5.4.2, “Cloning for Distributed Recovery”
      </a>
      ) and a remote
          cloning operation is used during distributed recovery. For
          this method of state transfer, the clone plugin's
      <a class="link" href="clone-plugin-options-variables.html#sysvar_clone_enable_compression">
       <code class="literal">
        clone_enable_compression
       </code>
      </a>
      setting applies.
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_recovery_get_public_key">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_get_public_key">
       <code class="literal">
        group_replication_recovery_get_public_key
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045129243424">
     </a>
     <a class="indexterm" name="idm46045129242304">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_recovery_get_public_key">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-recovery-get-public-key[={OFF|ON}]
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_get_public_key">
            group_replication_recovery_get_public_key
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Boolean
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           OFF
          </code>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, but the change takes effect only after
          you stop and restart Group Replication on the group member.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_get_public_key">
       <code class="literal">
        group_replication_recovery_get_public_key
       </code>
      </a>
      specifies whether to request from the source the public key
          required for RSA key pair-based password exchange. If
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_public_key_path">
       <code class="literal">
        group_replication_recovery_public_key_path
       </code>
      </a>
      is set to a valid public key file, it takes precedence over
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_get_public_key">
       <code class="literal">
        group_replication_recovery_get_public_key
       </code>
      </a>
      .
          This variable applies if you are not using SSL for distributed
          recovery over the
      <code class="literal">
       group_replication_recovery
      </code>
      channel
          (
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_use_ssl">
       <code class="literal">
        group_replication_recovery_use_ssl=ON
       </code>
      </a>
      ),
          and the replication user account for Group Replication
          authenticates with the
      <code class="literal">
       caching_sha2_password
      </code>
      plugin (the default).
          For more details, see
      <a class="xref" href="group-replication-secure-user.html#group-replication-caching-sha2-user-credentials" title="20.6.3.1.1 Replication User With The Caching SHA-2 Authentication Plugin">
       Section 20.6.3.1.1, “Replication User With The Caching SHA-2 Authentication Plugin”
      </a>
      .
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_recovery_public_key_path">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_public_key_path">
       <code class="literal">
        group_replication_recovery_public_key_path
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045129209104">
     </a>
     <a class="indexterm" name="idm46045129207984">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_recovery_public_key_path">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-recovery-public-key-path=file_name
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_public_key_path">
            group_replication_recovery_public_key_path
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          File name
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           empty string
          </code>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, but the change takes effect only after
          you stop and restart Group Replication on the group member.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_public_key_path">
       <code class="literal">
        group_replication_recovery_public_key_path
       </code>
      </a>
      specifies the path name to a file containing a replica-side
          copy of the public key required by the source for RSA key
          pair-based password exchange. The file must be in PEM format.
          If
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_public_key_path">
       <code class="literal">
        group_replication_recovery_public_key_path
       </code>
      </a>
      is set to a valid public key file, it takes precedence over
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_get_public_key">
       <code class="literal">
        group_replication_recovery_get_public_key
       </code>
      </a>
      .
          This variable applies if you are not using SSL for distributed
          recovery over the
      <code class="literal">
       group_replication_recovery
      </code>
      channel (so
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_use_ssl">
       <code class="literal">
        group_replication_recovery_use_ssl
       </code>
      </a>
      is set to
      <code class="literal">
       OFF
      </code>
      ), and the replication user
          account for Group Replication authenticates with the
      <code class="literal">
       caching_sha2_password
      </code>
      plugin (the default)
          or the
      <code class="literal">
       sha256_password
      </code>
      plugin (deprecated).
          (For
      <code class="literal">
       sha256_password
      </code>
      , setting
      <code class="literal">
       group_replication_recovery_public_key_path
      </code>
      applies only if MySQL was built using OpenSSL.) For more
          details, see
      <a class="xref" href="group-replication-secure-user.html#group-replication-caching-sha2-user-credentials" title="20.6.3.1.1 Replication User With The Caching SHA-2 Authentication Plugin">
       Section 20.6.3.1.1, “Replication User With The Caching SHA-2 Authentication Plugin”
      </a>
      .
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_recovery_reconnect_interval">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_reconnect_interval">
       <code class="literal">
        group_replication_recovery_reconnect_interval
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045129171664">
     </a>
     <a class="indexterm" name="idm46045129170544">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_recovery_reconnect_interval">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-recovery-reconnect-interval=#
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_reconnect_interval">
            group_replication_recovery_reconnect_interval
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Integer
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           60
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Minimum Value
         </th>
         <td>
          <code class="literal">
           0
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Maximum Value
         </th>
         <td>
          <code class="literal">
           31536000
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Unit
         </th>
         <td>
          seconds
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, but the change takes effect only after
          you stop and restart Group Replication on the group member.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_reconnect_interval">
       <code class="literal">
        group_replication_recovery_reconnect_interval
       </code>
      </a>
      specifies the sleep time, in seconds, between reconnection
          attempts when no suitable donor was found in the group for
          distributed recovery.
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_recovery_retry_count">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_retry_count">
       <code class="literal">
        group_replication_recovery_retry_count
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045129136752">
     </a>
     <a class="indexterm" name="idm46045129135712">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_recovery_retry_count">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-recovery-retry-count=#
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_retry_count">
            group_replication_recovery_retry_count
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Integer
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           10
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Minimum Value
         </th>
         <td>
          <code class="literal">
           0
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Maximum Value
         </th>
         <td>
          <code class="literal">
           31536000
          </code>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, but the change takes effect only after
          you stop and restart Group Replication on the group member.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_retry_count">
       <code class="literal">
        group_replication_recovery_retry_count
       </code>
      </a>
      specifies the number of times that the member that is joining
          tries to connect to the available donors for distributed
          recovery before giving up.
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_recovery_ssl_ca">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_ssl_ca">
       <code class="literal">
        group_replication_recovery_ssl_ca
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045129104080">
     </a>
     <a class="indexterm" name="idm46045129103040">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_recovery_ssl_ca">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-recovery-ssl-ca=value
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_ssl_ca">
            group_replication_recovery_ssl_ca
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          String
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, but the change takes effect only after
          you stop and restart Group Replication on the group member.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_ssl_ca">
       <code class="literal">
        group_replication_recovery_ssl_ca
       </code>
      </a>
      specifies the path to a file that contains a list of trusted
          SSL certificate authorities for distributed recovery
          connections. See
      <a class="xref" href="group-replication-secure-socket-layer-support-ssl.html" title="20.6.2 Securing Group Communication Connections with Secure Socket Layer (SSL)">
       Section 20.6.2, “Securing Group Communication Connections with Secure Socket Layer (SSL)”
      </a>
      for information on configuring SSL for distributed recovery.
     </p>
     <p>
      If this server has been set up to support cloning (see
      <a class="xref" href="group-replication-cloning.html" title="20.5.4.2 Cloning for Distributed Recovery">
       Section 20.5.4.2, “Cloning for Distributed Recovery”
      </a>
      ), and you have set
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_use_ssl">
       <code class="literal">
        group_replication_recovery_use_ssl
       </code>
      </a>
      to
      <code class="literal">
       ON
      </code>
      , Group Replication automatically
          configures the setting for the clone SSL option
      <a class="link" href="clone-plugin-options-variables.html#sysvar_clone_ssl_ca">
       <code class="literal">
        clone_ssl_ca
       </code>
      </a>
      to match your
          setting for
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_ssl_ca">
       <code class="literal">
        group_replication_recovery_ssl_ca
       </code>
      </a>
      .
     </p>
     <p>
      When the MySQL communication stack is in use for the group
          (
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_communication_stack">
       <code class="literal">
        group_replication_communication_stack
          = MYSQL
       </code>
      </a>
      ), this setting is used for the TLS/SSL
          configuration for group communication connections, as well as
          for distributed recovery connections.
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_recovery_ssl_capath">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_ssl_capath">
       <code class="literal">
        group_replication_recovery_ssl_capath
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045129070080">
     </a>
     <a class="indexterm" name="idm46045129069040">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_recovery_ssl_capath">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-recovery-ssl-capath=value
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_ssl_capath">
            group_replication_recovery_ssl_capath
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          String
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, but the change takes effect only after
          you stop and restart Group Replication on the group member.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_ssl_capath">
       <code class="literal">
        group_replication_recovery_ssl_capath
       </code>
      </a>
      specifies the path to a directory that contains trusted SSL
          certificate authority certificates for distributed recovery
          connections. See
      <a class="xref" href="group-replication-secure-socket-layer-support-ssl.html" title="20.6.2 Securing Group Communication Connections with Secure Socket Layer (SSL)">
       Section 20.6.2, “Securing Group Communication Connections with Secure Socket Layer (SSL)”
      </a>
      for information on configuring SSL for distributed recovery.
     </p>
     <p>
      When the MySQL communication stack is in use for the group
          (
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_communication_stack">
       <code class="literal">
        group_replication_communication_stack
          = MYSQL
       </code>
      </a>
      ), this setting is used for the TLS/SSL
          configuration for group communication connections, as well as
          for distributed recovery connections.
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_recovery_ssl_cert">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_ssl_cert">
       <code class="literal">
        group_replication_recovery_ssl_cert
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045129041872">
     </a>
     <a class="indexterm" name="idm46045129040832">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_recovery_ssl_cert">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-recovery-ssl-cert=value
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_ssl_cert">
            group_replication_recovery_ssl_cert
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          String
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, but the change takes effect only after
          you stop and restart Group Replication on the group member.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_ssl_cert">
       <code class="literal">
        group_replication_recovery_ssl_cert
       </code>
      </a>
      specifies the name of the SSL certificate file to use for
          establishing a secure connection for distributed recovery. See
      <a class="xref" href="group-replication-secure-socket-layer-support-ssl.html" title="20.6.2 Securing Group Communication Connections with Secure Socket Layer (SSL)">
       Section 20.6.2, “Securing Group Communication Connections with Secure Socket Layer (SSL)”
      </a>
      for information on configuring SSL for distributed recovery.
     </p>
     <p>
      If this server has been set up to support cloning (see
      <a class="xref" href="group-replication-cloning.html" title="20.5.4.2 Cloning for Distributed Recovery">
       Section 20.5.4.2, “Cloning for Distributed Recovery”
      </a>
      ), and you have set
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_use_ssl">
       <code class="literal">
        group_replication_recovery_use_ssl
       </code>
      </a>
      to
      <code class="literal">
       ON
      </code>
      , Group Replication automatically
          configures the setting for the clone SSL option
      <a class="link" href="clone-plugin-options-variables.html#sysvar_clone_ssl_cert">
       <code class="literal">
        clone_ssl_cert
       </code>
      </a>
      to match your
          setting for
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_ssl_cert">
       <code class="literal">
        group_replication_recovery_ssl_cert
       </code>
      </a>
      .
     </p>
     <p>
      When the MySQL communication stack is in use for the group
          (
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_communication_stack">
       <code class="literal">
        group_replication_communication_stack
          = MYSQL
       </code>
      </a>
      ), this setting is used for the TLS/SSL
          configuration for group communication connections, as well as
          for distributed recovery connections.
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_recovery_ssl_cipher">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_ssl_cipher">
       <code class="literal">
        group_replication_recovery_ssl_cipher
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045129007888">
     </a>
     <a class="indexterm" name="idm46045129006848">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_recovery_ssl_cipher">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-recovery-ssl-cipher=value
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_ssl_cipher">
            group_replication_recovery_ssl_cipher
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          String
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, but the change takes effect only after
          you stop and restart Group Replication on the group member.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_ssl_cipher">
       <code class="literal">
        group_replication_recovery_ssl_cipher
       </code>
      </a>
      specifies the list of permissible ciphers for SSL encryption.
          See
      <a class="xref" href="group-replication-secure-socket-layer-support-ssl.html" title="20.6.2 Securing Group Communication Connections with Secure Socket Layer (SSL)">
       Section 20.6.2, “Securing Group Communication Connections with Secure Socket Layer (SSL)”
      </a>
      for information on configuring SSL for distributed recovery.
     </p>
     <p>
      When the MySQL communication stack is in use for the group
          (
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_communication_stack">
       <code class="literal">
        group_replication_communication_stack
          = MYSQL
       </code>
      </a>
      ), this setting is used for the TLS/SSL
          configuration for group communication connections, as well as
          for distributed recovery connections.
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_recovery_ssl_crl">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_ssl_crl">
       <code class="literal">
        group_replication_recovery_ssl_crl
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045128979824">
     </a>
     <a class="indexterm" name="idm46045128978784">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_recovery_ssl_crl">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-recovery-ssl-crl=value
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_ssl_crl">
            group_replication_recovery_ssl_crl
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          File name
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, but the change takes effect only after
          you stop and restart Group Replication on the group member.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_ssl_crl">
       <code class="literal">
        group_replication_recovery_ssl_crl
       </code>
      </a>
      specifies the path to a directory that contains files
          containing certificate revocation lists. See
      <a class="xref" href="group-replication-secure-socket-layer-support-ssl.html" title="20.6.2 Securing Group Communication Connections with Secure Socket Layer (SSL)">
       Section 20.6.2, “Securing Group Communication Connections with Secure Socket Layer (SSL)”
      </a>
      for information on configuring SSL for distributed recovery.
     </p>
     <p>
      When the MySQL communication stack is in use for the group
          (
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_communication_stack">
       <code class="literal">
        group_replication_communication_stack
          = MYSQL
       </code>
      </a>
      ), this setting is used for the TLS/SSL
          configuration for group communication connections, as well as
          for distributed recovery connections.
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_recovery_ssl_crlpath">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_ssl_crlpath">
       <code class="literal">
        group_replication_recovery_ssl_crlpath
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045128951728">
     </a>
     <a class="indexterm" name="idm46045128950688">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_recovery_ssl_crlpath">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-recovery-ssl-crlpath=value
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_ssl_crlpath">
            group_replication_recovery_ssl_crlpath
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Directory name
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, but the change takes effect only after
          you stop and restart Group Replication on the group member.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_ssl_crlpath">
       <code class="literal">
        group_replication_recovery_ssl_crlpath
       </code>
      </a>
      specifies the path to a directory that contains files
          containing certificate revocation lists. See
      <a class="xref" href="group-replication-secure-socket-layer-support-ssl.html" title="20.6.2 Securing Group Communication Connections with Secure Socket Layer (SSL)">
       Section 20.6.2, “Securing Group Communication Connections with Secure Socket Layer (SSL)”
      </a>
      for information on configuring SSL for distributed recovery.
     </p>
     <p>
      When the MySQL communication stack is in use for the group
          (
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_communication_stack">
       <code class="literal">
        group_replication_communication_stack
          = MYSQL
       </code>
      </a>
      ), this setting is used for the TLS/SSL
          configuration for group communication connections, as well as
          for distributed recovery connections.
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_recovery_ssl_key">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_ssl_key">
       <code class="literal">
        group_replication_recovery_ssl_key
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045128923632">
     </a>
     <a class="indexterm" name="idm46045128922592">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_recovery_ssl_key">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-recovery-ssl-key=value
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_ssl_key">
            group_replication_recovery_ssl_key
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          String
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, but the change takes effect only after
          you stop and restart Group Replication on the group member.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_ssl_key">
       <code class="literal">
        group_replication_recovery_ssl_key
       </code>
      </a>
      specifies the name of the SSL key file to use for establishing
          a secure connection. See
      <a class="xref" href="group-replication-secure-socket-layer-support-ssl.html" title="20.6.2 Securing Group Communication Connections with Secure Socket Layer (SSL)">
       Section 20.6.2, “Securing Group Communication Connections with Secure Socket Layer (SSL)”
      </a>
      for information on configuring SSL for distributed recovery.
     </p>
     <p>
      If this server has been set up to support cloning (see
      <a class="xref" href="group-replication-cloning.html" title="20.5.4.2 Cloning for Distributed Recovery">
       Section 20.5.4.2, “Cloning for Distributed Recovery”
      </a>
      ), and you have set
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_use_ssl">
       <code class="literal">
        group_replication_recovery_use_ssl
       </code>
      </a>
      to
      <code class="literal">
       ON
      </code>
      , Group Replication automatically
          configures the setting for the clone SSL option
      <a class="link" href="clone-plugin-options-variables.html#sysvar_clone_ssl_key">
       <code class="literal">
        clone_ssl_key
       </code>
      </a>
      to match your
          setting for
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_ssl_key">
       <code class="literal">
        group_replication_recovery_ssl_key
       </code>
      </a>
      .
     </p>
     <p>
      When the MySQL communication stack is in use for the group
          (
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_communication_stack">
       <code class="literal">
        group_replication_communication_stack
          = MYSQL
       </code>
      </a>
      ), this setting is used for the TLS/SSL
          configuration for group communication connections, as well as
          for distributed recovery connections.
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_recovery_ssl_verify_server_cert">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_ssl_verify_server_cert">
       <code class="literal">
        group_replication_recovery_ssl_verify_server_cert
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045128889600">
     </a>
     <a class="indexterm" name="idm46045128888560">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_recovery_ssl_verify_server_cert">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-recovery-ssl-verify-server-cert[={OFF|ON}]
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_ssl_verify_server_cert">
            group_replication_recovery_ssl_verify_server_cert
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Boolean
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           OFF
          </code>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, but the change takes effect only after
          you stop and restart Group Replication on the group member.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_ssl_verify_server_cert">
       <code class="literal">
        group_replication_recovery_ssl_verify_server_cert
       </code>
      </a>
      specifies whether the distributed recovery connection should
          check the server's Common Name value in the certificate sent
          by the donor. See
      <a class="xref" href="group-replication-secure-socket-layer-support-ssl.html" title="20.6.2 Securing Group Communication Connections with Secure Socket Layer (SSL)">
       Section 20.6.2, “Securing Group Communication Connections with Secure Socket Layer (SSL)”
      </a>
      for information on configuring SSL for distributed recovery.
     </p>
     <p>
      When the MySQL communication stack is in use for the group
          (
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_communication_stack">
       <code class="literal">
        group_replication_communication_stack
          = MYSQL
       </code>
      </a>
      ), this setting is used for the TLS/SSL
          configuration for group communication connections, as well as
          for distributed recovery connections.
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_recovery_tls_ciphersuites">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_tls_ciphersuites">
       <code class="literal">
        group_replication_recovery_tls_ciphersuites
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045128858800">
     </a>
     <a class="indexterm" name="idm46045128857760">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_recovery_tls_ciphersuites">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-recovery-tls-ciphersuites=value
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_tls_ciphersuites">
            group_replication_recovery_tls_ciphersuites
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          String
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           NULL
          </code>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, but the change takes effect only after
          you stop and restart Group Replication on the group member.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_tls_ciphersuites">
       <code class="literal">
        group_replication_recovery_tls_ciphersuites
       </code>
      </a>
      specifies a colon-separated list of one or more permitted
          ciphersuites when TLSv1.3 is used for connection encryption
          for the distributed recovery connection, and this server
          instance is the client in the distributed recovery connection,
          that is, the joining member. If this system variable is set to
      <code class="literal">
       NULL
      </code>
      when TLSv1.3 is used (which is the
          default if you do not set the system variable), the
          ciphersuites that are enabled by default are allowed, as
          listed in
      <a class="xref" href="encrypted-connection-protocols-ciphers.html" title="8.3.2 Encrypted Connection TLS Protocols and Ciphers">
       Section 8.3.2, “Encrypted Connection TLS Protocols and Ciphers”
      </a>
      . If
          this system variable is set to the empty string, no cipher
          suites are allowed, and TLSv1.3 is therefore not used. See
      <a class="xref" href="group-replication-secure-socket-layer-support-ssl.html" title="20.6.2 Securing Group Communication Connections with Secure Socket Layer (SSL)">
       Section 20.6.2, “Securing Group Communication Connections with Secure Socket Layer (SSL)”
      </a>
      ,
          for information on configuring SSL for distributed recovery.
     </p>
     <p>
      When the MySQL communication stack is in use for the group
          (
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_communication_stack">
       <code class="literal">
        group_replication_communication_stack
          = MYSQL
       </code>
      </a>
      ), this setting is used for the TLS/SSL
          configuration for group communication connections, as well as
          for distributed recovery connections.
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_recovery_tls_version">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_tls_version">
       <code class="literal">
        group_replication_recovery_tls_version
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045128826208">
     </a>
     <a class="indexterm" name="idm46045128825168">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_recovery_tls_version">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-recovery-tls-version=value
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_tls_version">
            group_replication_recovery_tls_version
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          String
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           TLSv1.2,TLSv1.3
          </code>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, but the change takes effect only after
          you stop and restart Group Replication on the group member.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_tls_version">
       <code class="literal">
        group_replication_recovery_tls_version
       </code>
      </a>
      specifies a comma-separated list of one or more permitted TLS
          protocols for connection encryption when this server instance
          is the client in the distributed recovery connection, that is,
          the joining member. The group members involved in each
          distributed recovery connection as the client (joining member)
          and server (donor) negotiate the highest protocol version that
          they are both set up to support.
     </p>
     <p>
      When the MySQL communication stack is in use for the group
          (
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_communication_stack">
       <code class="literal">
        group_replication_communication_stack
          = MYSQL
       </code>
      </a>
      ), this setting is used for the TLS/SSL
          configuration for group communication connections, as well as
          for distributed recovery connections.
     </p>
     <p>
      The default is
      <span class="quote">
       “
       <span class="quote">
        <code class="literal">
         TLSv1.2,TLSv1.3
        </code>
       </span>
       ”
      </span>
      . Ensure that
          the specified protocol versions are contiguous, with no
          versions numbers skipped from the middle of the sequence.
     </p>
     <div class="important" style="margin-left: 0.5in; margin-right: 0.5in;">
      <div class="admon-title">
       Important
      </div>
      <div class="itemizedlist">
       <ul class="itemizedlist" style="list-style-type: circle; ">
        <li class="listitem">
         <p>
          Support for the TLSv1 and TLSv1.1 connection protocols
                was deprecated in and later removed from MySQL in MySQL
                8.0. See
          <a class="xref" href="encrypted-connection-protocols-ciphers.html#encrypted-connection-deprecated-protocols" title="Removal of Support for the TLSv1 and TLSv1.1 Protocols">
           Removal of Support for the TLSv1 and TLSv1.1 Protocols
          </a>
          for more information.
         </p>
        </li>
        <li class="listitem">
         <p>
          Support for the TLSv1.3 protocol is available in MySQL
                8.4, provided that MySQL was compiled using
                OpenSSL 1.1.1. The server checks the version of OpenSSL
                at startup, and if it is lower than 1.1.1, TLSv1.3 is
                removed from the default value for the system variable.
                In that case, the default is
          <code class="literal">
           TLSv1.2
          </code>
          .
         </p>
        </li>
        <li class="listitem">
         <p>
          Group Replication supports TLSv1.3 with support for
                ciphersuite selection. See
          <a class="xref" href="group-replication-secure-socket-layer-support-ssl.html" title="20.6.2 Securing Group Communication Connections with Secure Socket Layer (SSL)">
           Section 20.6.2, “Securing Group Communication Connections with Secure Socket Layer (SSL)”
          </a>
          for more information.
         </p>
        </li>
       </ul>
      </div>
     </div>
     <p>
      See
      <a class="xref" href="group-replication-secure-socket-layer-support-ssl.html" title="20.6.2 Securing Group Communication Connections with Secure Socket Layer (SSL)">
       Section 20.6.2, “Securing Group Communication Connections with Secure Socket Layer (SSL)”
      </a>
      for information on configuring SSL for distributed recovery.
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_recovery_use_ssl">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_use_ssl">
       <code class="literal">
        group_replication_recovery_use_ssl
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045128787376">
     </a>
     <a class="indexterm" name="idm46045128786336">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_recovery_use_ssl">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-recovery-use-ssl[={OFF|ON}]
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_use_ssl">
            group_replication_recovery_use_ssl
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Boolean
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           OFF
          </code>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, but the change takes effect only after
          you stop and restart Group Replication on the group member.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_use_ssl">
       <code class="literal">
        group_replication_recovery_use_ssl
       </code>
      </a>
      specifies whether Group Replication distributed recovery
          connections between group members should use SSL or not. See
      <a class="xref" href="group-replication-secure-socket-layer-support-ssl.html" title="20.6.2 Securing Group Communication Connections with Secure Socket Layer (SSL)">
       Section 20.6.2, “Securing Group Communication Connections with Secure Socket Layer (SSL)”
      </a>
      for information on configuring SSL for distributed recovery.
     </p>
     <p>
      If this server has been set up to support cloning (see
      <a class="xref" href="group-replication-cloning.html" title="20.5.4.2 Cloning for Distributed Recovery">
       Section 20.5.4.2, “Cloning for Distributed Recovery”
      </a>
      ), and you set this
          option to
      <code class="literal">
       ON
      </code>
      , Group Replication uses SSL
          for remote cloning operations as well as for state transfer
          from a donor's binary log. If you set this option to
      <code class="literal">
       OFF
      </code>
      , Group Replication does not use SSL for
          remote cloning operations.
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_recovery_zstd_compression_level">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_zstd_compression_level">
       <code class="literal">
        group_replication_recovery_zstd_compression_level
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045128755904">
     </a>
     <a class="indexterm" name="idm46045128754864">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_recovery_zstd_compression_level">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-recovery-zstd-compression-level=#
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_zstd_compression_level">
            group_replication_recovery_zstd_compression_level
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Integer
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           3
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Minimum Value
         </th>
         <td>
          <code class="literal">
           1
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Maximum Value
         </th>
         <td>
          <code class="literal">
           22
          </code>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, but the change takes effect only after
          you stop and restart Group Replication on the group member.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_recovery_zstd_compression_level">
       <code class="literal">
        group_replication_recovery_zstd_compression_level
       </code>
      </a>
      specifies the compression level to use for Group Replication
          distributed recovery connections that use the
      <code class="literal">
       zstd
      </code>
      compression algorithm. The permitted
          levels are from 1 to 22, with larger values indicating
          increasing levels of compression. The default
      <code class="literal">
       zstd
      </code>
      compression level is 3. For
          distributed recovery connections that do not use
      <code class="literal">
       zstd
      </code>
      compression, this variable has no
          effect.
     </p>
     <p>
      For more information, see
      <a class="xref" href="connection-compression-control.html" title="6.2.8 Connection Compression Control">
       Section 6.2.8, “Connection Compression Control”
      </a>
      .
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_single_primary_mode">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_single_primary_mode">
       <code class="literal">
        group_replication_single_primary_mode
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045128719520">
     </a>
     <a class="indexterm" name="idm46045128718480">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_single_primary_mode">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-single-primary-mode[={OFF|ON}]
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_single_primary_mode">
            group_replication_single_primary_mode
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Boolean
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           ON
          </code>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
      <div class="admon-title">
       Note
      </div>
      <p>
       This system variable is a group-wide configuration setting,
            and a full reboot of the replication group is required for a
            change to take effect.
      </p>
     </div>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_single_primary_mode">
       <code class="literal">
        group_replication_single_primary_mode
       </code>
      </a>
      instructs the group to pick a single server automatically to
          be the one that handles read/write workload. This server is
          the primary and all others are secondaries.
     </p>
     <p>
      This system variable is a group-wide configuration setting. It
          must have the same value on all group members, cannot be
          changed while Group Replication is running, and requires a
          full reboot of the group (a bootstrap by a server with
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_bootstrap_group">
       <code class="literal">
        group_replication_bootstrap_group=ON
       </code>
      </a>
      )
          in order for the value change to take effect. For instructions
          to safely bootstrap a group where transactions have been
          executed and certified, see
      <a class="xref" href="group-replication-restarting-group.html" title="20.5.2 Restarting a Group">
       Section 20.5.2, “Restarting a Group”
      </a>
      .
     </p>
     <p>
      If the group has a value set for this system variable, and a
          joining member has a different value set for the system
          variable, the joining member cannot join the group until the
          value is changed to match. If the group members have a value
          set for this system variable, and the joining member does not
          support the system variable, it cannot join the group.
     </p>
     <p>
      Setting this variable
      <code class="literal">
       ON
      </code>
      causes any setting
          for
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_auto_increment_increment">
       <code class="literal">
        group_replication_auto_increment_increment
       </code>
      </a>
      to be ignored.
     </p>
     <p>
      Use the functions
      <a class="link" href="group-replication-functions-for-mode.html#function_group-replication-switch-to-single-primary-mode">
       <code class="literal">
        group_replication_switch_to_single_primary_mode()
       </code>
      </a>
      and
      <a class="link" href="group-replication-functions-for-mode.html#function_group-replication-switch-to-multi-primary-mode">
       <code class="literal">
        group_replication_switch_to_multi_primary_mode()
       </code>
      </a>
      to change the value of this system variable while the group is
          still running. For more information, see
      <a class="xref" href="group-replication-changing-group-mode.html" title="20.5.1.2 Changing the Group Mode">
       Section 20.5.1.2, “Changing the Group Mode”
      </a>
      .
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_ssl_mode">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_ssl_mode">
       <code class="literal">
        group_replication_ssl_mode
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045128681232">
     </a>
     <a class="indexterm" name="idm46045128680128">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_ssl_mode">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-ssl-mode=value
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_ssl_mode">
            group_replication_ssl_mode
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Enumeration
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           DISABLED
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Valid Values
         </th>
         <td>
          <p class="valid-value">
           <code class="literal">
            DISABLED
           </code>
          </p>
          <p class="valid-value">
           <code class="literal">
            REQUIRED
           </code>
          </p>
          <p class="valid-value">
           <code class="literal">
            VERIFY_CA
           </code>
          </p>
          <p class="valid-value">
           <code class="literal">
            VERIFY_IDENTITY
           </code>
          </p>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, but the change takes effect only after
          you stop and restart Group Replication on the group member.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_ssl_mode">
       <code class="literal">
        group_replication_ssl_mode
       </code>
      </a>
      sets the security state of group communication connections
          between Group Replication members. The possible values are as
          follows:
     </p>
     <div class="variablelist">
      <dl class="variablelist">
       <dt>
        <span class="term">
         DISABLED
        </span>
       </dt>
       <dd>
        <p>
         Establish an unencrypted connection (the default).
        </p>
       </dd>
       <dt>
        <span class="term">
         REQUIRED
        </span>
       </dt>
       <dd>
        <p>
         Establish a secure connection if the server supports
                secure connections.
        </p>
       </dd>
       <dt>
        <span class="term">
         VERIFY_CA
        </span>
       </dt>
       <dd>
        <p>
         Like
         <code class="literal">
          REQUIRED
         </code>
         , but additionally
                verify the server TLS certificate against the configured
                Certificate Authority (CA) certificates.
        </p>
       </dd>
       <dt>
        <span class="term">
         VERIFY_IDENTITY
        </span>
       </dt>
       <dd>
        <p>
         Like
         <code class="literal">
          VERIFY_CA
         </code>
         , but additionally
                verify that the server certificate matches the host to
                which the connection is attempted.
        </p>
       </dd>
      </dl>
     </div>
     <p>
      See
      <a class="xref" href="group-replication-secure-socket-layer-support-ssl.html" title="20.6.2 Securing Group Communication Connections with Secure Socket Layer (SSL)">
       Section 20.6.2, “Securing Group Communication Connections with Secure Socket Layer (SSL)”
      </a>
      for information on configuring SSL for group communication.
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_start_on_boot">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_start_on_boot">
       <code class="literal">
        group_replication_start_on_boot
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045128637760">
     </a>
     <a class="indexterm" name="idm46045128636656">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_start_on_boot">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-start-on-boot[={OFF|ON}]
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_start_on_boot">
            group_replication_start_on_boot
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Boolean
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           ON
          </code>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, but the change takes effect only after
          you stop and restart Group Replication on the group member.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_start_on_boot">
       <code class="literal">
        group_replication_start_on_boot
       </code>
      </a>
      specifies whether the server should start Group Replication
          automatically (
      <code class="literal">
       ON
      </code>
      ) or not
          (
      <code class="literal">
       OFF
      </code>
      ) during server start. When you set
          this option to
      <code class="literal">
       ON
      </code>
      , Group Replication
          restarts automatically after a remote cloning operation is
          used for distributed recovery.
     </p>
     <p>
      To start Group Replication automatically during server start,
          the user credentials for distributed recovery must be stored
          in the replication metadata repositories on the server using
          the
      <a class="link" href="change-replication-source-to.html" title="15.4.2.2 CHANGE REPLICATION SOURCE TO Statement">
       <code class="literal">
        CHANGE REPLICATION SOURCE
          TO
       </code>
      </a>
      statement. If you prefer to specify user
          credentials as part of
      <a class="link" href="start-group-replication.html" title="15.4.3.1 START GROUP_REPLICATION Statement">
       <code class="literal">
        START
          GROUP_REPLICATION
       </code>
      </a>
      , which stores the user credentials
          in memory only, ensure that
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_start_on_boot">
       <code class="literal">
        group_replication_start_on_boot
       </code>
      </a>
      is set to
      <code class="literal">
       OFF
      </code>
      .
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_tls_source">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_tls_source">
       <code class="literal">
        group_replication_tls_source
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045128602768">
     </a>
     <a class="indexterm" name="idm46045128601664">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_tls_source">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-tls-source=value
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_tls_source">
            group_replication_tls_source
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Enumeration
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           mysql_main
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Valid Values
         </th>
         <td>
          <p class="valid-value">
           <code class="literal">
            mysql_main
           </code>
          </p>
          <p class="valid-value">
           <code class="literal">
            mysql_admin
           </code>
          </p>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, but the change takes effect only after
          you stop and restart Group Replication on the group member.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_tls_source">
       <code class="literal">
        group_replication_tls_source
       </code>
      </a>
      specifies the source of TLS material for Group Replication.
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_transaction_size_limit">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_transaction_size_limit">
       <code class="literal">
        group_replication_transaction_size_limit
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045128571296">
     </a>
     <a class="indexterm" name="idm46045128570176">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_transaction_size_limit">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-transaction-size-limit=#
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_transaction_size_limit">
            group_replication_transaction_size_limit
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Integer
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           150000000
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Minimum Value
         </th>
         <td>
          <code class="literal">
           0
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Maximum Value
         </th>
         <td>
          <code class="literal">
           2147483647
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Unit
         </th>
         <td>
          bytes
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      This system variable should have the same value on all group
          members. The value of this system variable can be changed
          while Group Replication is running. The change takes effect
          immediately on the group member, and applies from the next
          transaction started on that member. During this process, the
          value of the system variable is permitted to differ between
          group members, but some transactions might be rejected.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_transaction_size_limit">
       <code class="literal">
        group_replication_transaction_size_limit
       </code>
      </a>
      configures the maximum transaction size in bytes which the
          replication group accepts. Transactions larger than this size
          are rolled back by the receiving member and are not broadcast
          to the group. Large transactions can cause problems for a
          replication group in terms of memory allocation, which can
          cause the system to slow down, or in terms of network
          bandwidth consumption, which can cause a member to be
          suspected of having failed because it is busy processing the
          large transaction.
     </p>
     <p>
      When this system variable is set to 0 there is no limit to the
          size of transactions the group accepts. The default is
          150000000 bytes (approximately 143 MB). Adjust the value of
          this system variable depending on the maximum message size
          that you need the group to tolerate, bearing in mind that the
          time taken to process a transaction is proportional to its
          size. The value of
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_transaction_size_limit">
       <code class="literal">
        group_replication_transaction_size_limit
       </code>
      </a>
      should be the same on all group members. For further
          mitigation strategies for large transactions, see
      <a class="xref" href="group-replication-limitations.html" title="20.3.2 Group Replication Limitations">
       Section 20.3.2, “Group Replication Limitations”
      </a>
      .
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_unreachable_majority_timeout">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_unreachable_majority_timeout">
       <code class="literal">
        group_replication_unreachable_majority_timeout
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045128532784">
     </a>
     <a class="indexterm" name="idm46045128531680">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_unreachable_majority_timeout">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-unreachable-majority-timeout=#
          </code>
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_unreachable_majority_timeout">
            group_replication_unreachable_majority_timeout
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          Integer
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           0
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Minimum Value
         </th>
         <td>
          <code class="literal">
           0
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Maximum Value
         </th>
         <td>
          <code class="literal">
           31536000
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Unit
         </th>
         <td>
          seconds
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <p>
      The value of this system variable can be changed while Group
          Replication is running, and the change takes effect
          immediately. The current value of the system variable is read
          when an issue occurs that means the behavior is needed.
     </p>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_unreachable_majority_timeout">
       <code class="literal">
        group_replication_unreachable_majority_timeout
       </code>
      </a>
      specifies a number of seconds for which members that suffer a
          network partition and cannot connect to the majority wait
          before leaving the group. In a group of 5 servers
          (S1,S2,S3,S4,S5), if there is a disconnection between (S1,S2)
          and (S3,S4,S5) there is a network partition. The first group
          (S1,S2) is now in a minority because it cannot contact more
          than half of the group. While the majority group (S3,S4,S5)
          remains running, the minority group waits for the specified
          time for a network reconnection. For a detailed description of
          this scenario, see
      <a class="xref" href="group-replication-network-partitioning.html" title="20.7.8 Handling a Network Partition and Loss of Quorum">
       Section 20.7.8, “Handling a Network Partition and Loss of Quorum”
      </a>
      .
     </p>
     <p>
      By default,
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_unreachable_majority_timeout">
       <code class="literal">
        group_replication_unreachable_majority_timeout
       </code>
      </a>
      is set to 0, which means that members that find themselves in
          a minority due to a network partition wait forever to leave
          the group. If you set a timeout, when the specified time
          elapses, all pending transactions processed by the minority
          are rolled back, and the servers in the minority partition
          move to the
      <code class="literal">
       ERROR
      </code>
      state. If a member has
          the
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_autorejoin_tries">
       <code class="literal">
        group_replication_autorejoin_tries
       </code>
      </a>
      system variable set to specify a number of auto-rejoin
          attempts, it proceeds to make the specified number of attempts
          to rejoin the group while in super read only mode. If the
          member does not have any auto-rejoin attempts specified, or if
          it has exhausted the specified number of attempts, it follows
          the action specified by the system variable
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_exit_state_action">
       <code class="literal">
        group_replication_exit_state_action
       </code>
      </a>
      .
     </p>
     <div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
      <div class="admon-title">
       Warning
      </div>
      <p>
       When you have a symmetric group, with just two members for
            example (S0,S2), if there is a network partition and there
            is no majority, after the configured timeout all members
            enter the
       <code class="literal">
        ERROR
       </code>
       state.
      </p>
     </div>
     <p>
      For more information on using this option, see
      <a class="xref" href="group-replication-responses-failure-partition.html" title="20.7.7.2 Unreachable Majority Timeout">
       Section 20.7.7.2, “Unreachable Majority Timeout”
      </a>
      .
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="sysvar_group_replication_view_change_uuid">
      </a>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_view_change_uuid">
       <code class="literal">
        group_replication_view_change_uuid
       </code>
      </a>
     </p>
     <a class="indexterm" name="idm46045128487664">
     </a>
     <a class="indexterm" name="idm46045128486624">
     </a>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for group_replication_view_change_uuid">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --group-replication-view-change-uuid=value
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Deprecated
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          System Variable
         </th>
         <td>
          <code class="literal">
           <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_view_change_uuid">
            group_replication_view_change_uuid
           </a>
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Scope
         </th>
         <td>
          Global
         </td>
        </tr>
        <tr>
         <th>
          Dynamic
         </th>
         <td>
          Yes
         </td>
        </tr>
        <tr>
         <th>
          <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
           <code class="literal">
            SET_VAR
           </code>
          </a>
          Hint Applies
         </th>
         <td>
          No
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          String
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           AUTOMATIC
          </code>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
      <div class="admon-title">
       Note
      </div>
      <p>
       This system variable is a group-wide configuration setting,
            and a full reboot of the replication group is required for a
            change to take effect.
      </p>
     </div>
     <p>
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_view_change_uuid">
       <code class="literal">
        group_replication_view_change_uuid
       </code>
      </a>
      specifies an alternative UUID to use as the UUID part of the
          identifier in the GTIDs for view change events generated by
          the group. The alternative UUID makes these internally
          generated transactions easy to distinguish from transactions
          received by the group from clients. This can be useful if your
          setup allows for failover between groups, and you need to
          identify and discard transactions that were specific to the
          backup group. The default value for this system variable is
      <code class="literal">
       AUTOMATIC
      </code>
      , meaning that the GTIDs for view
          change events use the group name specified by the
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_group_name">
       <code class="literal">
        group_replication_group_name
       </code>
      </a>
      system variable, as transactions from clients do. Group
          members at a release that does not have this system variable
          are treated as having the value
      <code class="literal">
       AUTOMATIC
      </code>
      .
     </p>
     <p>
      The alternative UUID must be different from the group name
          specified by the
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_group_name">
       <code class="literal">
        group_replication_group_name
       </code>
      </a>
      system variable, and it must be different from the server UUID
          of any group member. It must also be different from any UUIDs
          used in the GTIDs that are applied to anonymous transactions
          on replication channels anywhere in this topology, using the
      <code class="literal">
       ASSIGN_GTIDS_TO_ANONYMOUS_TRANSACTIONS
      </code>
      option of the
      <a class="link" href="change-replication-source-to.html" title="15.4.2.2 CHANGE REPLICATION SOURCE TO Statement">
       <code class="literal">
        CHANGE REPLICATION SOURCE
          TO
       </code>
      </a>
      statement.
     </p>
     <p>
      This system variable is a group-wide configuration setting. It
          must have the same value on all group members, cannot be
          changed while Group Replication is running, and requires a
          full reboot of the group (a bootstrap by a server with
      <a class="link" href="group-replication-system-variables.html#sysvar_group_replication_bootstrap_group">
       <code class="literal">
        group_replication_bootstrap_group=ON
       </code>
      </a>
      )
          in order for the value change to take effect. For instructions
          to safely bootstrap a group where transactions have been
          executed and certified, see
      <a class="xref" href="group-replication-restarting-group.html" title="20.5.2 Restarting a Group">
       Section 20.5.2, “Restarting a Group”
      </a>
      .
     </p>
     <p>
      If the group has a value set for this system variable, and a
          joining member has a different value set for the system
          variable, the joining member cannot join the group until the
          value is changed to match. If the group members have a value
          set for this system variable, and the joining member does not
          support the system variable, it cannot join the group.
     </p>
     <p>
      Logging of view change events is replaced by sharing of
          recovery metadata; thus, this variable is deprecated, and
          subject to removal in a future version of MySQL.
     </p>
    </li>
   </ul>
  </div>
 </div>
 <br/>
</div>
