List:Commits« Previous MessageNext Message »
From:paul Date:July 18 2007 7:32pm
Subject:svn commit - mysqldoc@docsrva: r7142 - in trunk: . refman-4.1 refman-5.0 refman-5.1 refman-5.2
View as plain text  
Author: paul
Date: 2007-07-18 21:32:35 +0200 (Wed, 18 Jul 2007)
New Revision: 7142

Log:
 r27738@polar:  paul | 2007-07-18 12:12:47 -0500
 Amplification about dangers of mixing transactional/non-transactional
 tables when replicating. (Bug#26418)


Modified:
   trunk/refman-4.1/replication.xml
   trunk/refman-5.0/replication.xml
   trunk/refman-5.1/replication-notes.xml
   trunk/refman-5.2/replication-notes.xml

Property changes on: trunk
___________________________________________________________________
Name: svk:merge
   - 4767c598-dc10-0410-bea0-d01b485662eb:/mysqldoc-local/mysqldoc/trunk:27702
7d8d2c4e-af1d-0410-ab9f-b038ce55645b:/mysqldoc-local/mysqldoc:22722
b5ec3a16-e900-0410-9ad2-d183a3acac99:/mysqldoc-local/mysqldoc/trunk:14218
bf112a9c-6c03-0410-a055-ad865cd57414:/mysqldoc-local/mysqldoc/trunk:18941
   + 4767c598-dc10-0410-bea0-d01b485662eb:/mysqldoc-local/mysqldoc/trunk:27738
7d8d2c4e-af1d-0410-ab9f-b038ce55645b:/mysqldoc-local/mysqldoc:22722
b5ec3a16-e900-0410-9ad2-d183a3acac99:/mysqldoc-local/mysqldoc/trunk:14218
bf112a9c-6c03-0410-a055-ad865cd57414:/mysqldoc-local/mysqldoc/trunk:18941


Modified: trunk/refman-4.1/replication.xml
===================================================================
--- trunk/refman-4.1/replication.xml	2007-07-18 14:13:59 UTC (rev 7141)
+++ trunk/refman-4.1/replication.xml	2007-07-18 19:32:35 UTC (rev 7142)
Changed blocks: 1, Lines Added: 32, Lines Deleted: 13; 2490 bytes

@@ -2375,24 +2375,43 @@
       </listitem>
 
       <listitem>
-        <remark role="todo">
-          Check on the restart issue...
-        </remark>
-
-        <remark role="todo">
-          [pd] Is this a promise we want to make?
-        </remark>
-
         <para>
           It is possible to replicate transactional tables on the master
           using non-transactional tables on the slave. For example, you
           can replicate an <literal>InnoDB</literal> master table as a
-          <literal>MyISAM</literal> slave table. However, if you do
-          this, there are problems if the slave is stopped in the middle
-          of a <literal>BEGIN</literal>/<literal>COMMIT</literal> block
-          because the slave restarts at the beginning of the
-          <literal>BEGIN</literal> block.
+          <literal>MyISAM</literal> slave table. However, there are
+          issues that you should consider before you do this:
         </para>
+
+        <itemizedlist>
+
+          <listitem>
+            <para>
+              There are problems if the slave is stopped in the middle
+              of a <literal>BEGIN</literal>/<literal>COMMIT</literal>
+              block because the slave restarts at the beginning of the
+              <literal>BEGIN</literal> block.
+            </para>
+          </listitem>
+
+          <listitem>
+            <para>
+              When the storage engine type of the slave is
+              non-transactional, transactions on the master that mix
+              updates of transactional and non-transactional tables
+              should be avoided because they can cause inconsistency of
+              the data between the master's transactional table and the
+              slave's non-transactional table. That is, such
+              transactions can lead to master storage engine-specific
+              behavior with the possible effect of replication going out
+              of synchrony. MySQL does not issue a warning about this
+              currently, so extra care should be taken when replicating
+              transactional tables from the master to non-transactional
+              ones on the slaves.
+            </para>
+          </listitem>
+
+        </itemizedlist>
       </listitem>
 
       <listitem>


Modified: trunk/refman-5.0/replication.xml
===================================================================
--- trunk/refman-5.0/replication.xml	2007-07-18 14:13:59 UTC (rev 7141)
+++ trunk/refman-5.0/replication.xml	2007-07-18 19:32:35 UTC (rev 7142)
Changed blocks: 1, Lines Added: 32, Lines Deleted: 13; 2490 bytes

@@ -2432,24 +2432,43 @@
       </listitem>
 
       <listitem>
-        <remark role="todo">
-          Check on the restart issue...
-        </remark>
-
-        <remark role="todo">
-          [pd] Is this a promise we want to make?
-        </remark>
-
         <para>
           It is possible to replicate transactional tables on the master
           using non-transactional tables on the slave. For example, you
           can replicate an <literal>InnoDB</literal> master table as a
-          <literal>MyISAM</literal> slave table. However, if you do
-          this, there are problems if the slave is stopped in the middle
-          of a <literal>BEGIN</literal>/<literal>COMMIT</literal> block
-          because the slave restarts at the beginning of the
-          <literal>BEGIN</literal> block.
+          <literal>MyISAM</literal> slave table. However, there are
+          issues that you should consider before you do this:
         </para>
+
+        <itemizedlist>
+
+          <listitem>
+            <para>
+              There are problems if the slave is stopped in the middle
+              of a <literal>BEGIN</literal>/<literal>COMMIT</literal>
+              block because the slave restarts at the beginning of the
+              <literal>BEGIN</literal> block.
+            </para>
+          </listitem>
+
+          <listitem>
+            <para>
+              When the storage engine type of the slave is
+              non-transactional, transactions on the master that mix
+              updates of transactional and non-transactional tables
+              should be avoided because they can cause inconsistency of
+              the data between the master's transactional table and the
+              slave's non-transactional table. That is, such
+              transactions can lead to master storage engine-specific
+              behavior with the possible effect of replication going out
+              of synchrony. MySQL does not issue a warning about this
+              currently, so extra care should be taken when replicating
+              transactional tables from the master to non-transactional
+              ones on the slaves.
+            </para>
+          </listitem>
+
+        </itemizedlist>
       </listitem>
 
       <listitem>


Modified: trunk/refman-5.1/replication-notes.xml
===================================================================
--- trunk/refman-5.1/replication-notes.xml	2007-07-18 14:13:59 UTC (rev 7141)
+++ trunk/refman-5.1/replication-notes.xml	2007-07-18 19:32:35 UTC (rev 7142)
Changed blocks: 1, Lines Added: 14, Lines Deleted: 0; 1131 bytes

@@ -950,6 +950,20 @@
         </para>
       </caution>
 
+      <para>
+        When the storage engine type of the slave is non-transactional,
+        transactions on the master that mix updates of transactional and
+        non-transactional tables should be avoided because they can
+        cause inconsistency of the data between the master's
+        transactional table and the slave's non-transactional table.
+        That is, such transactions can lead to master storage
+        engine-specific behavior with the possible effect of replication
+        going out of synchrony. MySQL does not issue a warning about
+        this currently, so extra care should be taken when replicating
+        transactional tables from the master to non-transactional ones
+        on the slaves.
+      </para>
+
     </section>
 
     <section id="replication-features-morecolumns">


Modified: trunk/refman-5.2/replication-notes.xml
===================================================================
--- trunk/refman-5.2/replication-notes.xml	2007-07-18 14:13:59 UTC (rev 7141)
+++ trunk/refman-5.2/replication-notes.xml	2007-07-18 19:32:35 UTC (rev 7142)
Changed blocks: 1, Lines Added: 14, Lines Deleted: 0; 1131 bytes

@@ -950,6 +950,20 @@
         </para>
       </caution>
 
+      <para>
+        When the storage engine type of the slave is non-transactional,
+        transactions on the master that mix updates of transactional and
+        non-transactional tables should be avoided because they can
+        cause inconsistency of the data between the master's
+        transactional table and the slave's non-transactional table.
+        That is, such transactions can lead to master storage
+        engine-specific behavior with the possible effect of replication
+        going out of synchrony. MySQL does not issue a warning about
+        this currently, so extra care should be taken when replicating
+        transactional tables from the master to non-transactional ones
+        on the slaves.
+      </para>
+
     </section>
 
     <section id="replication-features-morecolumns">


Thread
svn commit - mysqldoc@docsrva: r7142 - in trunk: . refman-4.1 refman-5.0 refman-5.1 refman-5.2paul18 Jul