List:Commits« Previous MessageNext Message »
From:jon Date:April 24 2007 4:30am
Subject:svn commit - mysqldoc@docsrva: r6099 - in trunk: refman-5.1 refman-5.1/images refman-common/cluster-graphics refman-common/images
View as plain text  
Author: jstephens
Date: 2007-04-24 04:30:24 +0200 (Tue, 24 Apr 2007)
New Revision: 6099

Log:


Documented fix for Cluster Bug #25688

Updated discussion of circular replication in 
mysql-cluster-replication-issues (Thanks, Tomas!)

Added diagrams relating to this discussion (Dia and PNG format)



Added:
   trunk/refman-5.1/images/cluster-circular-replication-1.png
   trunk/refman-5.1/images/cluster-circular-replication-2.png
   trunk/refman-common/cluster-graphics/cluster-circular-replication-1.dia
   trunk/refman-common/cluster-graphics/cluster-circular-replication-1.png
   trunk/refman-common/cluster-graphics/cluster-circular-replication-2.dia
   trunk/refman-common/cluster-graphics/cluster-circular-replication-2.png
   trunk/refman-common/images/cluster-circular-replication-1.png
   trunk/refman-common/images/cluster-circular-replication-2.png
Modified:
   trunk/refman-5.1/Makefile.depends
   trunk/refman-5.1/mysql-cluster.xml
   trunk/refman-5.1/news-5.1.xml

Property changes on: trunk/refman-5.1/images/cluster-circular-replication-1.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Property changes on: trunk/refman-5.1/images/cluster-circular-replication-2.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Property changes on:
trunk/refman-common/cluster-graphics/cluster-circular-replication-1.dia
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Property changes on:
trunk/refman-common/cluster-graphics/cluster-circular-replication-1.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Property changes on:
trunk/refman-common/cluster-graphics/cluster-circular-replication-2.dia
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Property changes on:
trunk/refman-common/cluster-graphics/cluster-circular-replication-2.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Property changes on: trunk/refman-common/images/cluster-circular-replication-1.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Property changes on: trunk/refman-common/images/cluster-circular-replication-2.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream


Modified: trunk/refman-5.1/Makefile.depends
===================================================================
--- trunk/refman-5.1/Makefile.depends	2007-04-24 01:44:45 UTC (rev 6098)
+++ trunk/refman-5.1/Makefile.depends	2007-04-24 02:30:24 UTC (rev 6099)
Changed blocks: 4, Lines Added: 8, Lines Deleted: 0; 1521 bytes

@@ -572,6 +572,8 @@
 	faqs.xml \
 	images/PSEArch.png \
 	images/blackhole-1.png \
+	images/cluster-circular-replication-1.png \
+	images/cluster-circular-replication-2.png \
 	images/cluster-components-1.png \
 	images/cluster-replication-binlog-injector.png \
 	images/cluster-replication-overview.png \

@@ -676,6 +678,8 @@
 	../refman-common/replication-graphics/submaster-performance.png \
 	images/PSEArch.png \
 	images/blackhole-1.png \
+	images/cluster-circular-replication-1.png \
+	images/cluster-circular-replication-2.png \
 	images/cluster-components-1.png \
 	images/cluster-replication-binlog-injector.png \
 	images/cluster-replication-overview.png \

@@ -696,6 +700,8 @@
 	../common/phrases.ent \
 	../refman-common/urls.ent \
 	all-entities.ent \
+	images/cluster-circular-replication-1.png \
+	images/cluster-circular-replication-2.png \
 	images/cluster-components-1.png \
 	images/cluster-replication-binlog-injector.png \
 	images/cluster-replication-overview.png \

@@ -707,6 +713,8 @@
 	images/rolling-restarts.png \
 	versions.ent
 mysql_cluster_IMAGES = \
+	images/cluster-circular-replication-1.png \
+	images/cluster-circular-replication-2.png \
 	images/cluster-components-1.png \
 	images/cluster-replication-binlog-injector.png \
 	images/cluster-replication-overview.png \


Added: trunk/refman-5.1/images/cluster-circular-replication-1.png
===================================================================


Changed blocks: 0, Lines Added: 0, Lines Deleted: 0; 347 bytes


Added: trunk/refman-5.1/images/cluster-circular-replication-2.png
===================================================================


Changed blocks: 0, Lines Added: 0, Lines Deleted: 0; 347 bytes


Modified: trunk/refman-5.1/mysql-cluster.xml
===================================================================
--- trunk/refman-5.1/mysql-cluster.xml	2007-04-24 01:44:45 UTC (rev 6098)
+++ trunk/refman-5.1/mysql-cluster.xml	2007-04-24 02:30:24 UTC (rev 6099)
Changed blocks: 1, Lines Added: 76, Lines Deleted: 15; 5242 bytes

@@ -17227,24 +17227,85 @@
 
         <listitem>
           <para>
-            Circular replication is not supported for Cluster
-            replication. This is because all log events created in a
-            particular MySQL Cluster are wrongly tagged with the server
-            id of the MySQL server used as master and not with the
-            server id of the originating server.
+            <emphasis role="bold">Circular replication</emphasis>:
           </para>
-
+          
           <para>
-            Because of this misidentification, replicating between MySQL
-            servers <emphasis role="bold">A&rarr;B&rarr;A</emphasis>,
-            where <emphasis>B</emphasis> is any MySQL server connected
-            to a cluster <emphasis>A</emphasis>, causes the cluster
-            table changes (log entries) of <emphasis>A</emphasis> to
-            <quote>lose</quote> the originating server's identifier in
-            the log from <emphasis>B</emphasis> to
-            <emphasis>A</emphasis>. This causes the changes to be
-            reapplied on server <emphasis>A</emphasis>.
+            Prior to MySQL 5.1.18, circular replication was not
+            supported with MySQL Cluster replication, due to the fact
+            that all log events created in a particular MySQL Cluster
+            were wrongly tagged with the server ID of the MySQL server
+            used as master and not with the server ID of the originating
+            server.
           </para>
+          
+          <para>
+            Beginning with MySQL 5.1.18, this limitation is lifted, as
+            discussed in the next few paragraphs, in which we consider
+            the example of a replication setup involving three MySQL
+            Clusters numbered 1, 2, and 3, in which Cluster 1 acts as
+            the replication master for Cluster 2, Cluster 2 acts as the
+            master for Cluster 3, and Cluster 3 acts as the master for
+            Cluster 1. Each cluster has two SQL nodes, with SQL nodes A
+            and B belonging to Cluster 1, SQL nodes C and D belonging to
+            Cluster 2, and SQL nodes E and F belonging to Cluster 3. 
+          </para>
+          
+          <para>
+            Circular replication using these clusters is supported as
+            long as: 
+            <itemizedlist><listitem><para>
+            the SQL nodes on all masters and slaves are the
+            same</para></listitem><listitem><para>All SQL nodes
acting
+              as replication masters and slaves are started using the
+              <option>--log-slave-updates</option>
option</para></listitem></itemizedlist>
+            This type of circular replication setup is shown in the following diagram:
+            
+            <mediaobject>
+              <imageobject>
+                <imagedata fileref="images/cluster-circular-replication-1.png"
format="PNG"/>
+              </imageobject>
+              <textobject>
+                <phrase lang="en">Cluster circular replication scheme in
+                which all master SQL nodes are also slaves.</phrase>
+              </textobject>
+            </mediaobject>
+            
+            In this scenario, SQL node A in Cluster 1 replicates to SQL
+            node C in Cluster 2; SQL node C replicates to SQL node E in
+            Cluster 3; SQL node E replicates to SQL node A. In other
+            words, the replication line (indicated by the red arrows in
+            the diagram) directly connects all SQL nodes used as
+            replication masters and slaves. 
+          </para>
+          
+          <para>
+            It should also be possible to set up circular replication in which
+            not all master SQL nodes are also slaves, as shown here:
+            
+            <mediaobject>
+              <imageobject>
+                <imagedata fileref="images/cluster-circular-replication-2.png"
format="PNG"/>
+              </imageobject>
+              <textobject>
+                <phrase lang="en">Cluster circular replication scheme in
+                  which all master SQL nodes are not also necessarily
slaves.</phrase>
+              </textobject>
+              
+            </mediaobject>
+            
+            In this case, different SQL nodes in each cluster are used
+            as replication masters and slaves. However, you must
+            <emphasis>not</emphasis> start any of the SQL nodes using
+            <option>--log-slave-updates</option> (see the 
+            <link linkend="optvar_log-slave-updates">description of this
+            option</link> for more information). This type of circular
+            replication scheme for MySQL Cluster, in which the line of
+            replication (again indicated by the red arrows in the
+            diagram) is discontinuous, should be possible, but it should
+            be noted that it has not yet been thoroughly tested and
+            must therefore still be considered experimental.
+          </para>
         </listitem>
 
         <listitem>


Modified: trunk/refman-5.1/news-5.1.xml
===================================================================
--- trunk/refman-5.1/news-5.1.xml	2007-04-24 01:44:45 UTC (rev 6098)
+++ trunk/refman-5.1/news-5.1.xml	2007-04-24 02:30:24 UTC (rev 6099)
Changed blocks: 1, Lines Added: 10, Lines Deleted: 0; 716 bytes

@@ -156,6 +156,16 @@
           <xref linkend="mysql-cluster-replication-schema"/>.
         </para>
       </listitem>
+      
+      <listitem>
+        <para>
+          <literal>NDB Cluster</literal> (Replication): Some
+          circular replication setups are now supported for MySQL
+          Cluster. See 
+          <xref linkend="mysql-cluster-replication-issues"/>, for
+          detailed information. (Bug #25688) 
+        </para>
+      </listitem>
 
     </itemizedlist>
 


Added: trunk/refman-common/cluster-graphics/cluster-circular-replication-1.dia
===================================================================


Changed blocks: 0, Lines Added: 0, Lines Deleted: 0; 373 bytes


Added: trunk/refman-common/cluster-graphics/cluster-circular-replication-1.png
===================================================================


Changed blocks: 0, Lines Added: 0, Lines Deleted: 0; 373 bytes


Added: trunk/refman-common/cluster-graphics/cluster-circular-replication-2.dia
===================================================================


Changed blocks: 0, Lines Added: 0, Lines Deleted: 0; 373 bytes


Added: trunk/refman-common/cluster-graphics/cluster-circular-replication-2.png
===================================================================


Changed blocks: 0, Lines Added: 0, Lines Deleted: 0; 373 bytes


Added: trunk/refman-common/images/cluster-circular-replication-1.png
===================================================================


Changed blocks: 0, Lines Added: 0, Lines Deleted: 0; 353 bytes


Added: trunk/refman-common/images/cluster-circular-replication-2.png
===================================================================


Changed blocks: 0, Lines Added: 0, Lines Deleted: 0; 353 bytes


Thread
svn commit - mysqldoc@docsrva: r6099 - in trunk: refman-5.1 refman-5.1/images refman-common/cluster-graphics refman-common/imagesjon24 Apr