List:Commits« Previous MessageNext Message »
From:jon.stephens Date:February 17 2009 10:51am
Subject:svn commit - mysqldoc@docsrva: r13806 - in trunk: refman-4.1 refman-5.0 refman-5.1 refman-6.0
View as plain text  
Author: jstephens
Date: 2009-02-17 11:51:21 +0100 (Tue, 17 Feb 2009)
New Revision: 13806

Log:

Clarified that you need an ORDER BY for DML statements using LIMIT to
  replicate correctly (with SBR).



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


Modified: trunk/refman-4.1/replication.xml
===================================================================
--- trunk/refman-4.1/replication.xml	2009-02-17 09:40:59 UTC (rev 13805)
+++ trunk/refman-4.1/replication.xml	2009-02-17 10:51:21 UTC (rev 13806)
Changed blocks: 1, Lines Added: 13, Lines Deleted: 0; 903 bytes

@@ -2299,6 +2299,19 @@
         </para>
       </listitem>
 
+      <listitem>
+        <para>
+          <literal role="stmt">DELETE</literal>,
+          <literal role="stmt">UPDATE</literal>, and <literal>INSERT ...
+          SELECT</literal> statements containing a
+          <literal>LIMIT</literal> clause are not guaranteed to produce
+          the same result on the slave as on the master, since the order
+          of the rows affected is not defined. Such statements can be
+          replicated correctly only if they also contain an
+          <literal>ORDER BY</literal> clause.
+        </para>
+      </listitem>
+
     </itemizedlist>
 
     <para>


Modified: trunk/refman-5.0/replication-notes.xml
===================================================================
--- trunk/refman-5.0/replication-notes.xml	2009-02-17 09:40:59 UTC (rev 13805)
+++ trunk/refman-5.0/replication-notes.xml	2009-02-17 10:51:21 UTC (rev 13806)
Changed blocks: 1, Lines Added: 16, Lines Deleted: 0; 1002 bytes

@@ -663,6 +663,22 @@
 
     </section>
 
+    <section id="replication-features-limit">
+
+      <title>Replication and <literal>LIMIT</literal></title>
+
+      <para>
+        Replication of <literal>LIMIT</literal> clauses in
+        <literal role="stmt">DELETE</literal>,
+        <literal role="stmt">UPDATE</literal>, and <literal>INSERT ...
+        SELECT</literal> statements is not guaranteed, since the order
+        of the rows affected is not defined. Such statements can be
+        replicated correctly only if they also contain an <literal>ORDER
+        BY</literal> clause.
+      </para>
+
+    </section>
+
     <section id="replication-features-load">
 
       <title>Replication and <literal>LOAD ...</literal> Operations</title>


Modified: trunk/refman-5.1/replication-notes.xml
===================================================================
--- trunk/refman-5.1/replication-notes.xml	2009-02-17 09:40:59 UTC (rev 13805)
+++ trunk/refman-5.1/replication-notes.xml	2009-02-17 10:51:21 UTC (rev 13806)
Changed blocks: 1, Lines Added: 5, Lines Deleted: 2; 952 bytes

@@ -1423,8 +1423,11 @@
         in <literal role="stmt">DELETE</literal>,
         <literal role="stmt">UPDATE</literal>, and <literal>INSERT ...
         SELECT</literal> statements is unsafe since the order of the
-        rows affected is not defined. Beginning with MySQL 5.1.24, when
-        such a statement is encountered:
+        rows affected is not defined. (Such statements can be replicated
+        correctly when using <literal>STATEMENT</literal> mode only if
+        they also contain an <literal>ORDER BY</literal> clause.)
+        Beginning with MySQL 5.1.24, when such a statement (without
+        <literal>ORDER BY</literal>) is encountered:
 
         <itemizedlist>
 


Modified: trunk/refman-6.0/replication-notes.xml
===================================================================
--- trunk/refman-6.0/replication-notes.xml	2009-02-17 09:40:59 UTC (rev 13805)
+++ trunk/refman-6.0/replication-notes.xml	2009-02-17 10:51:21 UTC (rev 13806)
Changed blocks: 1, Lines Added: 5, Lines Deleted: 2; 950 bytes

@@ -1439,8 +1439,11 @@
         in <literal role="stmt">DELETE</literal>,
         <literal role="stmt">UPDATE</literal>, and <literal>INSERT ...
         SELECT</literal> statements is unsafe since the order of the
-        rows affected is not defined. Beginning with MySQL 6.0.5, when
-        such a statement is encountered:
+        rows affected is not defined. (Such statements can be replicated
+        correctly when using <literal>STATEMENT</literal> mode only if
+        they also contain an <literal>ORDER BY</literal> clause.)
+        Beginning with MySQL 6.0.5, when such a statement (without
+        <literal>ORDER BY</literal>) is encountered:
 
         <itemizedlist>
 


Thread
svn commit - mysqldoc@docsrva: r13806 - in trunk: refman-4.1 refman-5.0 refman-5.1 refman-6.0jon.stephens17 Feb