<div id="docs-body">
 <div class="section">
  <div class="titlepage">
   <div>
    <div>
     <h3 class="title">
      <a name="group-replication-configuring-online-group">
      </a>
      20.5.1 Configuring an Online Group
     </h3>
    </div>
   </div>
  </div>
  <div class="toc">
   <dl class="toc">
    <dt>
     <span class="section">
      <a href="group-replication-change-primary.html">
       20.5.1.1 Changing the Primary
      </a>
     </span>
    </dt>
    <dt>
     <span class="section">
      <a href="group-replication-changing-group-mode.html">
       20.5.1.2 Changing the Group Mode
      </a>
     </span>
    </dt>
    <dt>
     <span class="section">
      <a href="group-replication-group-write-consensus.html">
       20.5.1.3 Using Group Replication Group Write Consensus
      </a>
     </span>
    </dt>
    <dt>
     <span class="section">
      <a href="group-replication-communication-protocol.html">
       20.5.1.4 Setting a Group's Communication Protocol Version
      </a>
     </span>
    </dt>
    <dt>
     <span class="section">
      <a href="group-replication-member-actions.html">
       20.5.1.5 Configuring Member Actions
      </a>
     </span>
    </dt>
   </dl>
  </div>
  <a class="indexterm" name="idm46045133622256">
  </a>
  <a class="indexterm" name="idm46045133620752">
  </a>
  <p>
   You can configure an online group while Group Replication is
      running by using a set of functions, which rely on a group action
      coordinator. These functions are installed by the Group
      Replication plugin. This section describes how changes are made to
      a running group, and the available functions.
  </p>
  <div class="important" style="margin-left: 0.5in; margin-right: 0.5in;">
   <div class="admon-title">
    Important
   </div>
   <p>
    For the coordinator to be able to configure group wide actions
        on a running group, all members must have the functions
        installed.
   </p>
  </div>
  <p>
   To use the functions, connect to a member of the running group and
      invoke the function with the
   <a class="link" href="select.html" title="15.2.13 SELECT Statement">
    <code class="literal">
     SELECT
    </code>
   </a>
   statement. The Group Replication plugin processes the action and
      its parameters and the coordinator sends it to all members which
      are visible to the member where you invoked the function. If the
      action is accepted, all members execute the action and send a
      termination message when completed. Once all members declare the
      action as finished, the invoking member returns the result to the
      client.
  </p>
  <p>
   When configuring a whole group, the distributed nature of the
      operations means that they interact with many processes of the
      Group Replication plugin, and therefore you should observe the
      following:
  </p>
  <p>
   <b>
    You can issue configuration operations everywhere.
   </b>
   If you want to make member A the new primary you do not need to
        invoke the operation on member A. All operations are sent and
        executed in a coordinated way on all group members. Also, this
        distributed execution of an operation has a different
        ramification: if the invoking member dies, any already running
        configuration process continues to run on other members. In the
        unlikely event that the invoking member dies, you can still use
        the monitoring features to ensure other members complete the
        operation successfully.
  </p>
  <p>
   <b>
    All members must be online.
   </b>
   To simplify the migration or election processes and guarantee
        they are as fast as possible, the group must not contain any
        member currently in the distributed recovery process, otherwise
        the configuration action is rejected by the member where you
        issue the statement.
  </p>
  <p>
   <b>
    No members can join a group during a configuration change.
   </b>
   Any member that attempts to join the group during a coordinated
        configuration change leaves the group and cancels its join
        process.
  </p>
  <p>
   <b>
    Only one configuration at once.
   </b>
   A group which is executing a configuration change cannot accept
        any other group configuration change, because concurrent
        configuration operations could lead to member divergence.
  </p>
 </div>
 <br/>
</div>
