List:Commits« Previous MessageNext Message »
From:jon.stephens Date:July 7 2009 7:43am
Subject:svn commit - mysqldoc@docsrva: r15602 - in trunk: dynamic-docs/changelog ndbapi ndbapi/images/published ndbapi/images/source/xmi refman-5.1 refman-5.4...
View as plain text  
Author: jstephens
Date: 2009-07-07 09:43:41 +0200 (Tue, 07 Jul 2009)
New Revision: 15602

Log:

Documented fixes for Cluster bugs:
  Bug #45053, BUg #45917, Bug #45921

New AutoReconnect configuration parameter, new NDBAPI methods (Bug #45921)

Warning about DML and 6.3->7.0 upgrades (Bug #45917)

Rebuilt dependencies




Modified:
   trunk/dynamic-docs/changelog/mysqld-1.xml
   trunk/ndbapi/class-ndb-cluster-connection.xml
   trunk/ndbapi/images/published/Ndb-cluster-connection-class.png
   trunk/ndbapi/images/source/xmi/Ndb-cluster-connection.xmi.tgz
   trunk/refman-5.1/mysql-cluster-configuration.xml
   trunk/refman-5.1/mysql-cluster-upgrade-downgrade.xml
   trunk/refman-5.4/Makefile.depends


Modified: trunk/dynamic-docs/changelog/mysqld-1.xml
===================================================================
--- trunk/dynamic-docs/changelog/mysqld-1.xml	2009-07-07 02:19:06 UTC (rev 15601)
+++ trunk/dynamic-docs/changelog/mysqld-1.xml	2009-07-07 07:43:41 UTC (rev 15602)
Changed blocks: 1, Lines Added: 102, Lines Deleted: 0; 2820 bytes

@@ -6,6 +6,108 @@
 ]>
 <changelog>
 
+  <logentry entrytype="bug">
+
+    <tags>
+      <highlight type="cluster"/>
+      <manual type="AutoReconnect"/>
+      <manual type="mysqld"/>
+      <manual type="Ndb_cluster_connection"/>
+    </tags>
+
+    <bugs>
+      <fixes bugid="45921"/>
+    </bugs>
+
+    <versions>
+      <version ver="5.1.35-ndb-6.3.26"/>
+      <version ver="5.1.35-ndb-7.0.7"/>
+    </versions>
+
+    <message>
+
+      <para>
+        The <literal>AutoReconnect</literal> configuration parameter for
+        API nodes (including SQL nodes) has been added. This is intended
+        to prevent API nodes from re-using allocated node IDs during
+        cluster restarts. For more information, see
+        <xref linkend="mysql-cluster-api-definition"/>.
+      </para>
+
+      <para>
+        This fix also introduces two new methods of the
+        <literal>Ndb_cluster_connection</literal> class in the NDB API.
+        For more information, see
+        <xref linkend="class-ndb-cluster-connection-set-auto-reconnect"/>,
+        and
+        <xref linkend="class-ndb-cluster-connection-get-auto-reconnect"/>.
+      </para>
+
+    </message>
+
+  </logentry>
+
+  <logentry entrytype="bug">
+
+    <tags>
+      <highlight type="cluster"/>
+      <manual type="upgrades"/>
+      <manual type="DML statements"/>
+    </tags>
+
+    <bugs>
+      <fixes bugid="45917"/>
+    </bugs>
+
+    <versions>
+      <version ver="5.1.35-ndb-7.0.7"/>
+    </versions>
+
+    <message>
+
+      <para>
+        DML statements run during an upgrade from MySQL Cluster NDB 6.3
+        to NDB 7.0 were not handled correctly.
+      </para>
+
+    </message>
+
+  </logentry>
+
+  <logentry entrytype="bug">
+
+    <tags>
+      <highlight type="cluster"/>
+      <manual type="VARCHAR"/>
+      <manual type="utf8_unicode_ci"/>
+    </tags>
+
+    <bugs>
+      <fixes bugid="45053"/>
+    </bugs>
+
+    <versions>
+      <version ver="5.1.35-ndb-6.2.19"/>
+      <version ver="5.1.35-ndb-6.3.26"/>
+      <version ver="5.1.35-ndb-7.0.7"/>
+    </versions>
+
+    <message>
+
+      <para>
+        Problems could arise when using
+        <literal role="type" condition="char">VARCHAR</literal> columns
+        whose size was greater than 341 characters and which used the
+        <literal>utf8_unicode_ci</literal> collation. In some cases,
+        this combination of conditions could cause certain queries and
+        <literal role="stmt">OPTIMIZE TABLE</literal> statements to
+        crash <command>mysqld</command>.
+      </para>
+
+    </message>
+
+  </logentry>
+
   <logentry entrytype="feature">
 
     <tags>


Modified: trunk/ndbapi/class-ndb-cluster-connection.xml
===================================================================
--- trunk/ndbapi/class-ndb-cluster-connection.xml	2009-07-07 02:19:06 UTC (rev 15601)
+++ trunk/ndbapi/class-ndb-cluster-connection.xml	2009-07-07 07:43:41 UTC (rev 15602)
Changed blocks: 3, Lines Added: 188, Lines Deleted: 1; 6007 bytes

@@ -246,6 +246,20 @@
               objects.
             </para></entry>
         </row>
+        <row>
+          <entry><literal><link linkend="class-ndb-cluster-connection-set-auto-reconnect">set_auto_reconnect()</link></literal></entry>
+          <entry><para>
+              Enables or disables auto-reconnection of API nodes using
+              this <literal>Ndb_cluster_connection</literal>.
+            </para></entry>
+        </row>
+        <row>
+          <entry><literal><link linkend="class-ndb-cluster-connection-get-auto-reconnect">get_auto_reconnect()</link></literal></entry>
+          <entry><para>
+              Gets the auto-reconnection setting for API nodes using
+              this <literal>Ndb_cluster_connection</literal>.
+            </para></entry>
+        </row>
       </tbody>
     </tgroup>
   </informaltable>

@@ -266,7 +280,7 @@
 
       <mediaobject>
         <imageobject>
-          <imagedata contentwidth="514" contentdepth="207" fileref="images/published/Ndb-cluster-connection-class.png" format="PNG"/>
+          <imagedata contentwidth="300" contentdepth="200" fileref="images/published/Ndb-cluster-connection-class.png" format="PNG"/>
         </imageobject>
         <textobject>
           <phrase lang="en">Public methods of the

@@ -1134,6 +1148,179 @@
 
     </section>
 
+    <section id="class-ndb-cluster-connection-set-auto-reconnect">
+
+      <title><literal>Ndb_cluster_connection::set_auto_reconnect()</literal></title>
+
+      <indexterm>
+        <primary>Ndb_cluster_connection::set_auto_reconnect()</primary>
+      </indexterm>
+
+      <indexterm>
+        <primary>set_auto_reconnect() (method of Ndb_cluster_connection)</primary>
+      </indexterm>
+
+      <formalpara>
+
+        <title>Description</title>
+
+        <para>
+          Prior to MySQL Cluster NDB 6.3.26 and MySQL Cluster NDB 7.0.7,
+          an API node that was disconnected from the cluster tried to
+          re-use an existing <literal>Ndb_cluster_connection</literal>
+          object when reconnecting; however, it was discovered that
+          allowing this also sometimes allowed multiple API nodes to try
+          to connect using the same node ID during a restart of the
+          cluster. (Bug #45921) Beginning with these versions, API nodes
+          are instead forced to use a new connection object, unless this
+          behavior is overridden by setting <literal>AutoReconnect =
+          1</literal> in the <filename>config.ini</filename> file or
+          calling this method with 1 as the input value. Calling the
+          method with 0 for the value has the same effect as setting the
+          <literal>AutoReconnect</literal> configuration parameter (also
+          introduced in those MySQL Cluster versions) to 0; that is, API
+          nodes are forced to create new connections.
+        </para>
+
+      </formalpara>
+
+      <formalpara>
+
+        <title>Signature</title>
+
+        <para>
+<programlisting>
+void set_auto_reconnect
+    (
+      int <replaceable>value</replaceable>
+    )
+</programlisting>
+        </para>
+
+      </formalpara>
+
+      <formalpara>
+
+        <title>Parameters</title>
+
+        <para>
+          A <replaceable>value</replaceable> of 0 or 1 which determines
+          API node reconnection behavior. 0 forces API nodes to use new
+          connections (<literal>Ndb_cluster_connection</literal>
+          objects); 1 allows API nodes to re-use existing connections to
+          the cluster.
+        </para>
+
+      </formalpara>
+
+      <formalpara>
+
+        <title>Return Value</title>
+
+        <para>
+          <emphasis>None</emphasis>.
+        </para>
+
+      </formalpara>
+
+<!--
+      <formalpara>
+        
+        <title>Example</title>
+        
+        <para>
+<programlisting>
+[<emphasis>To be supplied...</emphasis>]
+</programlisting>
+        </para>
+        
+      </formalpara>
+-->
+
+    </section>
+
+    <section id="class-ndb-cluster-connection-get-auto-reconnect">
+
+      <title><literal>Ndb_cluster_connection::get_auto_reconnect()</literal></title>
+
+      <indexterm>
+        <primary>Ndb_cluster_connection::get_auto_reconnect()</primary>
+      </indexterm>
+
+      <indexterm>
+        <primary>get_auto_reconnect() (method of Ndb_cluster_connection)</primary>
+      </indexterm>
+
+      <formalpara>
+
+        <title>Description</title>
+
+        <para>
+          Introduced in MySQL Cluster NDB 6.3.26 and MySQL CLuster NDB
+          7.0.7, this method retrieves the current
+          <literal>AutoReconnect</literal> setting for a given
+          <literal>Ndb_cluster_connection</literal>. For more detailed
+          information, see
+          <xref linkend="class-ndb-cluster-connection-set-auto-reconnect"/>.
+        </para>
+
+      </formalpara>
+
+      <formalpara>
+
+        <title>Signature</title>
+
+        <para>
+<programlisting>
+int get_auto_reconnect
+    (
+      void
+    )
+</programlisting>
+        </para>
+
+      </formalpara>
+
+      <formalpara>
+
+        <title>Parameters</title>
+
+        <para>
+          <emphasis>None</emphasis>.
+        </para>
+
+      </formalpara>
+
+      <formalpara>
+
+        <title>Return Value</title>
+
+        <para>
+          An integer value 0 or 1, corresponding to the current
+          <literal>AutoReconnect</literal> setting in effect for for
+          this connection. 0 forces API nodes to use new connections to
+          the cluster; 1 allows API nodes to re-use existing
+          connections.
+        </para>
+
+      </formalpara>
+
+<!--
+      <formalpara>
+        
+        <title>Example</title>
+        
+        <para>
+        <programlisting>
+        [<emphasis>To be supplied...</emphasis>]
+        </programlisting>
+        </para>
+        
+      </formalpara>
+-->
+
+    </section>
+
   </section>
 
 </section>


Modified: trunk/ndbapi/images/published/Ndb-cluster-connection-class.png
===================================================================


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


Modified: trunk/ndbapi/images/source/xmi/Ndb-cluster-connection.xmi.tgz
===================================================================


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


Modified: trunk/refman-5.1/mysql-cluster-configuration.xml
===================================================================
--- trunk/refman-5.1/mysql-cluster-configuration.xml	2009-07-07 02:19:06 UTC (rev 15601)
+++ trunk/refman-5.1/mysql-cluster-configuration.xml	2009-07-07 07:43:41 UTC (rev 15602)
Changed blocks: 2, Lines Added: 31, Lines Deleted: 0; 1976 bytes

@@ -6447,6 +6447,27 @@
           </para>
         </listitem>
 
+        <listitem>
+          <indexterm>
+            <primary>TotalSendBufferMemory</primary>
+            <secondary>API and SQL nodes</secondary>
+          </indexterm>
+
+          <para id="mysql-cluster-param-api-definition-autoreconnect">
+            <literal>AutoReconnect</literal>
+          </para>
+
+          <para>
+            This parameter is available beginning with MySQL Cluster NDB
+            6.3.26 and MySQL Cluster NDB 7.0.7. By default, its value is
+            <literal>false</literal>, which forces disconnected API
+            nodes (including MySQL Servers acting as SQL nodes) the use
+            a new connection to the cluster rather than attempting to
+            re-use an existing one, which can cause problems when using
+            dynamically-allocated node IDs. (Bug #45921)
+          </para>
+        </listitem>
+
       </itemizedlist>
 
       <para>

@@ -8643,6 +8664,16 @@
               <entry>N</entry>
             </row>
             <row>
+              <entry><literal><link linkend="mysql-cluster-param-api-definition-autoreconnect">AutoReconnect</link></literal>
+                (added in MySQL Cluster NDB 6.3.26 and MySQL Cluster NDB
+                7.0.7)</entry>
+              <entry>boolean</entry>
+              <entry>false</entry>
+              <entry>false</entry>
+              <entry>true</entry>
+              <entry>N</entry>
+            </row>
+            <row>
               <entry><literal><link linkend="mysql-cluster-param-api-definition-batchbytesize">BatchByteSize</link></literal></entry>
               <entry>bytes</entry>
               <entry>32K</entry>


Modified: trunk/refman-5.1/mysql-cluster-upgrade-downgrade.xml
===================================================================
--- trunk/refman-5.1/mysql-cluster-upgrade-downgrade.xml	2009-07-07 02:19:06 UTC (rev 15601)
+++ trunk/refman-5.1/mysql-cluster-upgrade-downgrade.xml	2009-07-07 07:43:41 UTC (rev 15602)
Changed blocks: 1, Lines Added: 8, Lines Deleted: 0; 694 bytes

@@ -784,6 +784,14 @@
             </para>
           </listitem>
 
+          <listitem>
+            <para>
+              Prior to MySQL Cluster NDB 7.0.7, DML statements failed if
+              executed while performing an online upgrade from a MySQL
+              CLuster NDB 6.3 release. (Bug #45917)
+            </para>
+          </listitem>
+
         </itemizedlist>
       </para>
 


Modified: trunk/refman-5.4/Makefile.depends
===================================================================
--- trunk/refman-5.4/Makefile.depends	2009-07-07 02:19:06 UTC (rev 15601)
+++ trunk/refman-5.4/Makefile.depends	2009-07-07 07:43:41 UTC (rev 15602)
Changed blocks: 4, Lines Added: 1, Lines Deleted: 3; 1669 bytes

@@ -1192,7 +1192,6 @@
 	metadata/programs-client-core.idmap \
 	metadata/programs-installation.idmap \
 	metadata/programs-using.idmap \
-	metadata/replication-options-core.idmap \
 	metadata/sql-syntax-server-administration.idmap
 dynxml-local-dba-user-management.validpure: $(dynxml_local_dba_user_management_SOURCES)
 dynxml-local-dba-user-management.titles: $(dynxml_local_dba_user_management_SOURCES)

@@ -1755,6 +1754,7 @@
 dynxml_local_news_5_4_IMAGES =
 dynxml_local_news_5_4_SOURCES = dynxml-local-news-5.4.xml $(dynxml_local_news_5_4_INCLUDES)
 dynxml_local_news_5_4_IDMAPS = \
+	metadata/functions-core.idmap \
 	metadata/installing-core.idmap \
 	metadata/introduction.idmap \
 	metadata/optimization.idmap \

@@ -1956,7 +1956,6 @@
 	../refman-5.1/metadata/errors-problems-core.idmap \
 	metadata/dba-log-files.idmap \
 	metadata/dba-mysqld-server-core.idmap \
-	metadata/dba-user-management-core.idmap \
 	metadata/errors-problems-core.idmap \
 	metadata/programs-using.idmap \
 	metadata/replication-configuration.idmap \

@@ -4986,7 +4985,6 @@
 sql_syntax_server_administration_SOURCES = sql-syntax-server-administration.xml $(sql_syntax_server_administration_INCLUDES)
 sql_syntax_server_administration_IDMAPS = \
 	../refman-5.1/metadata/mysql-cluster-limitations.idmap \
-	../refman-5.1/metadata/mysql-cluster-replication.idmap \
 	../refman-common/metadata/bug-reports.idmap \
 	metadata/apis-c.idmap \
 	metadata/backup.idmap \


Thread
svn commit - mysqldoc@docsrva: r15602 - in trunk: dynamic-docs/changelog ndbapi ndbapi/images/published ndbapi/images/source/xmi refman-5.1 refman-5.4jon.stephens7 Jul