List:Commits« Previous MessageNext Message »
From:jon.stephens Date:November 6 2009 8:54pm
Subject:svn commit - mysqldoc@docsrva: r17508 - in trunk: dynamic-docs/changelog refman-5.1
View as plain text  
Author: jstephens
Date: 2009-11-06 20:54:26 +0100 (Fri, 06 Nov 2009)
New Revision: 17508

Log:

Fixed Docs Bug #46764; also corrected changelog entry for Cluster Bug #32656 



Modified:
   trunk/dynamic-docs/changelog/mysqld-1.xml
   trunk/refman-5.1/mysql-cluster-overview.xml


Modified: trunk/dynamic-docs/changelog/mysqld-1.xml
===================================================================
--- trunk/dynamic-docs/changelog/mysqld-1.xml	2009-11-06 18:30:44 UTC (rev 17507)
+++ trunk/dynamic-docs/changelog/mysqld-1.xml	2009-11-06 19:54:26 UTC (rev 17508)
Changed blocks: 2, Lines Added: 16, Lines Deleted: 5; 1837 bytes

@@ -19838,10 +19838,12 @@
     <tags>
       <highlight type="cluster"/>
       <manual type="transactions"/>
+      <manual type="rollbacks"/>
     </tags>
 
     <bugs>
       <fixes bugid="32656"/>
+      <seealsobug bugid="47654"/>
     </bugs>
 
     <versions>

@@ -19852,18 +19854,27 @@
     <message>
 
       <para>
-        A duplicate key error raised when inserting into an
+        A duplicate key or other error raised when inserting into an
         <literal role="se">NDBCLUSTER</literal> table caused the current
         transaction to abort, after which any SQL statement other than a
         <literal role="stmt" condition="commit">ROLLBACK</literal>
         failed. With this fix, the
         <literal role="se">NDBCLUSTER</literal> storage engine now
-        supports rollback of individual statements in such cases, and it
-        is no longer necessary to issue an explicit
-        <literal role="stmt" condition="commit">ROLLBACK</literal> and
-        then retry the entire transaction.
+        performs an implicit rollback when a transaction is aborted in
+        this way; it is no longer necessary to issue an explicit
+        <literal role="stmt" condition="commit">ROLLBACK</literal>
+        statement, and the next statement that is issued automatically
+        begins a new transaction.
       </para>
 
+      <note>
+        <para>
+          It remains necessary in such cases to retry the complete
+          transaction, regardless of which statement caused it to be
+          aborted.
+        </para>
+      </note>
+
     </message>
 
   </logentry>


Modified: trunk/refman-5.1/mysql-cluster-overview.xml
===================================================================
--- trunk/refman-5.1/mysql-cluster-overview.xml	2009-11-06 18:30:44 UTC (rev 17507)
+++ trunk/refman-5.1/mysql-cluster-overview.xml	2009-11-06 19:54:26 UTC (rev 17508)
Changed blocks: 1, Lines Added: 26, Lines Deleted: 15; 3021 bytes

@@ -5212,32 +5212,43 @@
           <listitem>
             <formalpara>
 
-              <title>Rollbacks</title>
+              <title>Implicit Rollbacks</title>
 
               <para>
-                Prior to MySQL Cluster NDB 6.3.19, the
-                <literal role="se">NDBCLUSTER</literal> storage engine
-                did not support partial transactions or partial
-                rollbacks of transactions. A duplicate key or similar
-                error aborted the entire transaction, and subsequent
-                statements raised <errortext>ERROR 1296 (HY000): Got
-                error 4350 'Transaction already aborted' from
+                Prior to MySQL Cluster NDB 6.2.17 and MySQL Cluster NDB
+                6.3.19, MySQL Cluster did not automtically roll back a
+                transaction that was aborted by a duplicate key or
+                similar error, and subsequent statements raised
+                <errortext>ERROR 1296 (HY000): Got error 4350
+                'Transaction already aborted' from
                 NDBCLUSTER</errortext>. In such cases, it was necessary
                 to issue an explicit
                 <literal role="stmt" condition="commit">ROLLBACK</literal>
-                and retry the entire transaction.
+                statement first, and then to retry the entire
+                transaction.
               </para>
 
             </formalpara>
 
             <para>
-              Beginning with MySQL Cluster NDB 6.3.19, this limitation
-              has been removed, and the behavior of
-              <literal role="se">NDBCLUSTER</literal> is now in line
-              with that of other transactional storage engines such as
-              <literal>InnoDB</literal> which can roll back individual
-              statements. (Bug#32656)
+              Beginning with MySQL Cluster NDB 6.2.17 and MySQL Cluster
+              NDB 6.3.19, this limitation has been removed; now, an
+              error which causes a transaction to be aborted generates
+              an implicit rollback of the entire transaction. This is
+              logged with the warning <errortext>Storage engine NDB does
+              not support rollback for this statement. Transaction
+              rolled back and must be restarted</errortext>. A statement
+              subsequent to this starts a new transaction. (Bug#32656)
             </para>
+
+            <note>
+              <para>
+                The <literal role="se">NDBCLUSTER</literal> storage
+                engine does not support partial transactions or partial
+                rollbacks of transactions in any version of MySQL
+                Cluster.
+              </para>
+            </note>
           </listitem>
 
           <listitem>


Thread
svn commit - mysqldoc@docsrva: r17508 - in trunk: dynamic-docs/changelog refman-5.1jon.stephens6 Nov 2009