Author: mcbrown
Date: 2007-12-03 11:50:38 +0100 (Mon, 03 Dec 2007)
New Revision: 9062
Log:
Documenting Dev Bugs:
Bug #21438
Bug #20491
Bug #31823
Bug #32101
Bug #31790
Bug #32577
Bug #15604
Bug #31720
Bug #32685
Bug #32727
Bug #16178
Bug #29239
Bug #32596
Bug #30495
Bug #26377
Bug #26379
Bug #26867
Bug #25038
Bug #25700
Bug #30275
Bug #19627
Bug #27660
Bug #30273
Bug #30759
Bug #18431
Added:
trunk/dynamic-docs/changelog/mysqld-1.xml
Modified:
trunk/dynamic-docs/changelog/connector-j-versions.xml
trunk/dynamic-docs/changelog/connector-j.xml
trunk/dynamic-docs/changelog/connector-odbc-versions.xml
trunk/dynamic-docs/changelog/connector-odbc.xml
trunk/dynamic-docs/changelog/mysqld.xml
trunk/refman-5.1/se-merge.xml
trunk/refman-6.0/se-merge.xml
Modified: trunk/dynamic-docs/changelog/connector-j-versions.xml
===================================================================
--- trunk/dynamic-docs/changelog/connector-j-versions.xml 2007-12-03 10:47:28 UTC (rev 9061)
+++ trunk/dynamic-docs/changelog/connector-j-versions.xml 2007-12-03 10:50:38 UTC (rev 9062)
Changed blocks: 1, Lines Added: 2, Lines Deleted: 0; 614 bytes
@@ -3,6 +3,8 @@
<versionlog>
<mysqlproductname title="MySQL Connector/J"/>
+ <versionentry ver="6.0.0" reldate="Not yet released"/>
+ <versionentry ver="5.1.6" reldate="Not yet released"/>
<versionentry ver="5.1.5" reldate="09 October 2007"/>
<versionentry ver="5.1.4" reldate="Not Released">
Modified: trunk/dynamic-docs/changelog/connector-j.xml
===================================================================
--- trunk/dynamic-docs/changelog/connector-j.xml 2007-12-03 10:47:28 UTC (rev 9061)
+++ trunk/dynamic-docs/changelog/connector-j.xml 2007-12-03 10:50:38 UTC (rev 9062)
Changed blocks: 1, Lines Added: 265, Lines Deleted: 0; 6580 bytes
@@ -2,9 +2,274 @@
<!DOCTYPE changelog SYSTEM "changelog.dtd">
<changelog>
+ <logentry entrytype="feature">
+
+ <versions>
+ <version ver="6.0.0"/>
+ </versions>
+
+ <message>
+
+ <para>
+ The availability of the
+ <literal>INFORMATION_SCHEMA.parameters</literal> table is now
+ detected (for MySQL servers >= 6.0.4) and is used for the
+ <function>DatabaseMetadata.getProcedureColumns()</function> and
+ <function>DatabaseMetadata.getFunctionColumns</function>
+ functions (JDBC-4.0) and the metadata required to execute
+ <classname>CallableStatements</classname>
+ </para>
+
+ <para>
+ If <literal>INFORMATION_SCHEMA.parameters</literal> is
+ available, the driver no longer needs permissions for
+ <literal>SHOW CREATE PROCEDURE</literal> granted to retrieve
+ parameter metadata for
+ <classname>CallableStatements</classname>.
+ </para>
+
+ </message>
+
+ </logentry>
+
<logentry entrytype="bug">
<bugs>
+ <fixes bugid="21438"/>
+ </bugs>
+
+ <versions>
+ <version ver="5.0.5"/>
+ </versions>
+
+ <message>
+
+ <para>
+ When using a server-side prepared statement the driver would
+ send timestamps to the server using nanoseconds instead of
+ milliseconds.
+ </para>
+
+ </message>
+
+ </logentry>
+
+ <logentry entrytype="bug">
+
+ <bugs>
+ <fixes bugid="20491"/>
+ </bugs>
+
+ <versions>
+ <version ver="5.1.6"/>
+ </versions>
+
+ <message>
+
+ <para>
+ <function>DatabaseMetadata.getColumns()</function> doesn't return the
+ correct column names if the connection character isn't UTF-8. A
+ bug in MySQL server compounded the issue, but was fixed within
+ the MySQL 5.0 release cycle. The fix includes changes to all the
+ sections of the code that access the server metadata.
+ </para>
+
+ </message>
+
+ </logentry>
+
+ <logentry entrytype="bug">
+
+ <bugs>
+ <fixes bugid="31823"/>
+ </bugs>
+
+ <versions>
+ <version ver="5.1.6"/>
+ </versions>
+
+ <message>
+
+ <para>
+ Using <function>CallableStatement.setNull()</function> on a
+ stored function would throw an
+ <literal>ArrayIndexOutOfBounds</literal> exception when setting
+ the last parameter to null.
+ </para>
+
+ </message>
+
+ </logentry>
+
+ <logentry entrytype="bug">
+
+ <bugs>
+ <fixes bugid="32101"/>
+ </bugs>
+
+ <versions>
+ <version ver="5.1.6"/>
+ </versions>
+
+ <message>
+
+ <para>
+ When using a connection from
+ <classname>ConnectionPoolDataSource</classname>, some
+ <function>Connection.prepareStatement()</function> methods would
+ return null instead of the prepared statement.
+ </para>
+
+ </message>
+
+ </logentry>
+
+ <logentry entrytype="bug">
+
+ <bugs>
+ <fixes bugid="31790"/>
+ </bugs>
+
+ <versions>
+ <version ver="5.1.6"/>
+ </versions>
+
+ <message>
+
+ <para>
+ <classname>MysqlValidConnectionChecker</classname> doesn't
+ properly handle connections created using
+ <classname>ReplicationConnection</classname>.
+ </para>
+
+ </message>
+
+ </logentry>
+
+ <logentry entrytype="feature">
+
+ <versions>
+ <version ver="5.1.6"/>
+ </versions>
+
+ <message>
+
+ <para>
+ Add the <literal>verifyServerCertificate</literal> propery. If
+ set to "false" the driver will not verify the server's
+ certificate when <literal>useSSL</literal> is set to "true"
+ </para>
+
+ <para>
+ When using this feature, the keystore parameters should be
+ specified by the <literal>clientCertificateKeyStore*</literal>
+ properties, rather than system properties, as the JSSE doesn't
+ it straightforward to have a non-verifying trust store and the
+ "default" key store.
+ </para>
+
+ </message>
+
+ </logentry>
+
+ <logentry entrytype="bug">
+
+ <versions>
+ <version ver="5.1.6"/>
+ </versions>
+
+ <message>
+
+ <para>
+ Fixed <methodname>ResultSetMetadata.getColumnName()</methodname>
+ for result sets returned from
+ <methodname>Statement.getGeneratedKeys()</methodname> - it was
+ returning null instead of "GENERATED_KEY" as in 5.0.x.
+ </para>
+
+ </message>
+
+ </logentry>
+
+ <logentry entrytype="feature">
+
+ <versions>
+ <version ver="5.1.6"/>
+ </versions>
+
+ <message>
+
+ <para>
+ The profiler event handling has been made extensible via the
+ <option>profilerEventHandler</option> connection property.
+ </para>
+
+ </message>
+
+ </logentry>
+
+ <logentry entrytype="feature">
+
+ <versions>
+ <version ver="5.1.6"/>
+ </versions>
+
+ <message>
+
+ <para>
+ XAConnections and datasources have been updated to the JDBC-4.0
+ standard.
+ </para>
+
+ </message>
+
+ </logentry>
+
+ <logentry entrytype="bug">
+
+ <bugs>
+ <fixes bugid="32577"/>
+ <fixes bugid="15604"/>
+ </bugs>
+
+ <versions>
+ <version ver="5.1.6"/>
+ </versions>
+
+ <message>
+
+ <para>
+ During a Daylight Savings Time (DST) switchover, there was no
+ way to store two timestamp/datetime values , as the hours end up
+ being the same when sent as the literal that MySQL requires.
+ </para>
+
+ <para>
+ Note that to get this scenario to work with MySQL (since it
+ doesn't support per-value timezones), you need to configure your
+ server (or session) to be in UTC, and tell the driver not to use
+ the legacy date/time code by setting
+ <literal>useLegacyDatetimeCode</literal> to "false". This will
+ cause the driver to always convert to/from the server and client
+ timezone consistently.
+ </para>
+
+ <para>
+ This bug fix also fixes BUG#15604, by adding entirely new
+ date/time handling code that can be switched on by
+ <option>useLegacyDatetimeCode</option> being set to "false" as a
+ JDBC configuration property. For Connector/J 5.1.x, the default
+ is "true", in trunk and beyond it will be "false" (i.e. the old
+ date/time handling code will be deprecated)
+ </para>
+
+ </message>
+
+ </logentry>
+
+ <logentry entrytype="bug">
+
+ <bugs>
<fixes bugid="32246"/>
</bugs>
Modified: trunk/dynamic-docs/changelog/connector-odbc-versions.xml
===================================================================
--- trunk/dynamic-docs/changelog/connector-odbc-versions.xml 2007-12-03 10:47:28 UTC (rev 9061)
+++ trunk/dynamic-docs/changelog/connector-odbc-versions.xml 2007-12-03 10:50:38 UTC (rev 9062)
Changed blocks: 1, Lines Added: 2, Lines Deleted: 1; 806 bytes
@@ -136,7 +136,8 @@
</versionentry>
<versionentry ver="5.0.3" reldate="20 June 2006"/>
<versionentry ver="5.0.2" reldate="Never released"/>
- <versionentry ver="5.0.1" reldate="5 June 2006"/>
+<versionentry ver="5.0.1" reldate="5 June 2006"/>
+ <versionentry ver="3.51.23" reldate="Not yet released"/>
<versionentry ver="3.51.22" reldate="13 November 2007"/>
<versionentry ver="3.51.21" reldate="08 October 2007"/>
<versionentry ver="3.51.20" reldate="10 September 2007"/>
Modified: trunk/dynamic-docs/changelog/connector-odbc.xml
===================================================================
--- trunk/dynamic-docs/changelog/connector-odbc.xml 2007-12-03 10:47:28 UTC (rev 9061)
+++ trunk/dynamic-docs/changelog/connector-odbc.xml 2007-12-03 10:50:38 UTC (rev 9062)
Changed blocks: 1, Lines Added: 130, Lines Deleted: 0; 2719 bytes
@@ -5,6 +5,136 @@
<logentry entrytype="bug">
<bugs>
+ <fixes bugid="31720"/>
+ </bugs>
+
+ <versions>
+ <version ver="5.1.1"/>
+ </versions>
+
+ <message>
+
+ <para>
+ ADO applications would not open a <literal>RecordSet</literal>
+ that contained a <literal>DECIMAL</literal> field.
+ </para>
+
+ </message>
+
+ </logentry>
+
+ <logentry entrytype="bug">
+
+ <bugs>
+ <fixes bugid="32685"/>
+ </bugs>
+
+ <versions>
+ <version ver="5.1.1"/>
+ </versions>
+
+ <message>
+
+ <para>
+ A wrapper for the
+ <function>SQLGetPrivateProfileStringW()</function> function, which is required for Unicode support, has been created. This function is missing from the unixODBC driver manager.
+ </para>
+
+ </message>
+
+ </logentry>
+
+ <logentry entrytype="bug">
+
+ <bugs>
+ <fixes bugid="32727"/>
+ </bugs>
+
+ <versions>
+ <version ver="3.51.23"/>
+ </versions>
+
+ <message>
+
+ <para>
+ Connector/ODBC would incorrectly return
+ <literal>SQL_SUCCESS</literal> when checking for distributed
+ transaction support.
+ </para>
+
+ </message>
+
+ </logentry>
+
+ <logentry entrytype="bug">
+
+ <bugs>
+ <fixes bugid="16178"/>
+ </bugs>
+
+ <versions>
+ <version ver="5.1.1"/>
+ </versions>
+
+ <message>
+
+ <para>
+ Connector/ODBC would fail to connect to the server if the
+ password contained certain characters, including the semicolon
+ and other punctuation marks.
+ </para>
+
+ </message>
+
+ </logentry>
+
+ <logentry entrytype="bug">
+
+ <bugs>
+ <fixes bugid="29239"/>
+ </bugs>
+
+ <versions>
+ <version ver="5.1.1"/>
+ </versions>
+
+ <message>
+
+ <para>
+ Using an ODBC prepared statement with bound columns would
+ produce an empty result set when called immediately after
+ inserting a row into a table.
+ </para>
+
+ </message>
+
+ </logentry>
+
+ <logentry entrytype="bug">
+
+ <bugs>
+ <fixes bugid="32596"/>
+ </bugs>
+
+ <versions>
+ <version ver="5.1.1"/>
+ </versions>
+
+ <message>
+
+ <para>
+ The <literal>SET NAMES</literal> statement has been disabled
+ because it causes problems in the ODBC driver when determining
+ the current client character set.
+ </para>
+
+ </message>
+
+ </logentry>
+
+ <logentry entrytype="bug">
+
+ <bugs>
<fixes bugid="32171"/>
</bugs>
Added: trunk/dynamic-docs/changelog/mysqld-1.xml
===================================================================
--- trunk/dynamic-docs/changelog/mysqld-1.xml (rev 0)
+++ trunk/dynamic-docs/changelog/mysqld-1.xml 2007-12-03 10:50:38 UTC (rev 9062)
Changed blocks: 1, Lines Added: 347, Lines Deleted: 0; 10826 bytes
@@ -0,0 +1,347 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE changelog SYSTEM "changelog.dtd"
+[
+ <!ENTITY % all.entities SYSTEM "all-entities.ent">
+ %all.entities;
+]>
+<changelog>
+
+ <logentry entrytype="bug">
+
+ <tags>
+ <manual type="OPTIMIZE TABLE"/>
+ <manual type="ANALYZE TABLE"/>
+ <manual type="MyISAM"/>
+ </tags>
+
+ <bugs>
+ <fixes bugid="30495"/>
+ </bugs>
+
+ <versions>
+ <version ver="6.0.4"/>
+ <version ver="5.1.23"/>
+ <version ver="5.0.54"/>
+ </versions>
+
+ <message>
+
+ <para>
+ The options available to the <literal>CHECK TABLE</literal>
+ statement were also allowed in <literal>OPTIMIZE TABLE</literal>
+ and <literal>ANALYZE TABLE</literal> statements, but caused
+ corruption during their execution. These options were never
+ supported for the these statements, and an error is now raised
+ if you try to apply these options to these statements.
+ </para>
+
+ </message>
+
+ </logentry>
+
+ <logentry entrytype="bug">
+
+ <tags>
+ <manual type="MERGE"/>
+ <manual type="OPTIMIZE TABLE"/>
+ <manual type="FLUSH TABLES"/>
+ <manual type="LOCK TABLE"/>
+ <manual type="ANALYZE TABLE"/>
+ <manual type="TRUNCATE"/>
+ <manual type="REPAIR TABLE"/>
+ <highlight type="importantchange"/>
+ <highlight type="incompatiblechange"/>
+ </tags>
+
+ <bugs>
+ <fixes bugid="26377"/>
+ <fixes bugid="26379"/>
+ <fixes bugid="26867"/>
+ <fixes bugid="25038"/>
+ <fixes bugid="25700"/>
+ <fixes bugid="30275"/>
+ <fixes bugid="19627"/>
+ <fixes bugid="27660"/>
+ <fixes bugid="30273"/>
+ </bugs>
+
+ <versions>
+ <version ver="5.1.23"/>
+ <version ver="6.0.4"/>
+ </versions>
+
+ <message>
+
+ <para>
+ A number of problems existed in the implementation of
+ <literal>MERGE</literal> tables that could cause problems. The
+ problems are summarized below:
+ </para>
+
+ <itemizedlist>
+
+ <listitem>
+ <para>
+ Bug #26379 - Combination of <literal>FLUSH TABLE</literal>
+ and <literal>REPAIR TABLE</literal> corrupts a
+ <literal>MERGE</literal> table. This was caused in a number
+ of situations:
+ </para>
+ <orderedlist>
+
+ <listitem>
+ <para>
+ A thread trying to lock a <literal>MERGE</literal> table
+ performs busy waiting while <literal>REPAIR
+ TABLE</literal> or a similar table administration task
+ is ongoing on one or more of its MyISAM tables.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ A thread trying to lock a <literal>MERGE</literal> table
+ performs busy waiting until all threads that did
+ <literal>REPAIR TABLE</literal> or similar table
+ administration tasks on one or more of its MyISAM tables
+ in LOCK TABLES segments do UNLOCK TABLES. The difference
+ against problem #1 is that the busy waiting takes place
+ after the administration task. It is terminated by
+ <literal>UNLOCK TABLES</literal> only.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Two <literal>FLUSH TABLES</literal> within a
+ <literal>LOCK TABLES</literal> segment can invalidate
+ the lock. This does not require a
+ <literal>MERGE</literal> table. The first <literal>FLUSH
+ TABLES</literal> can be replaced by any statement that
+ requires other threads to reopen the table. In 5.0 and
+ 5.1 a single <literal>FLUSH TABLES</literal> can provoke
+ the problem.
+ </para>
+ </listitem>
+
+ </orderedlist>
+ </listitem>
+
+ <listitem>
+ <para>
+ Bug #26867 - Simultaneously executing <literal>LOCK
+ TABLES</literal> and <literal>REPAIR TABLE</literal> on a
+ <literal>MERGE</literal> table would result in memory/cpu
+ hogging.
+ </para>
+ <para>
+ Trying DML on a <literal>MERGE</literal> table, which has a
+ child locked and repaired by another thread, made an
+ infinite loop in the server.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Bug #26377 - Deadlock with <literal>MERGE</literal> and
+ <literal>FLUSH TABLE</literal>
+ </para>
+ <para>
+ Locking a MERGE table and its children in parent-child order
+ and flushing the child deadlocked the server.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Bug #25038 - Waiting <literal>TRUNCATE</literal>
+ </para>
+ <para>
+ Truncating a MERGE child, while the MERGE table was in use,
+ let the truncate fail instead of waiting for the table to
+ become free.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Bug #25700 - <literal>MERGE</literal> base tables get
+ corrupted by <literal>OPTIMIZE/ANALYZE/REPAIR
+ TABLE</literal>
+ </para>
+ <para>
+ Repairing a child of an open <literal>MERGE</literal> table
+ corrupted the child. It was necessary to
+ <literal>FLUSH</literal> the child first.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Bug #30275 - <literal>MERGE</literal> tables: <literal>FLUSH
+ TABLES</literal> or <literal>UNLOCK TABLES</literal> causes
+ server to crash.
+ </para>
+ <para>
+ Flushing and optimizing locked <literal>MERGE</literal>
+ children crashed the server.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Bug #19627 - temporary merge table locking
+ </para>
+ <para>
+ Use of a temporary <literal>MERGE</literal> table with
+ non-temporary children could corrupt the children.
+ </para>
+ <para>
+ Temporary tables are never locked. Creation of tables with
+ non-temporary chidlren of a temporary
+ <literal>MERGE</literal> table is now prohibited.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Bug #27660 - Falcon: <literal>MERGE</literal> table possible
+ </para>
+ <para>
+ It was possible to create a <literal>MERGE</literal> table
+ with non-MyISAM children.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Bug #30273 - <literal>MERGE</literal> tables: Can't lock
+ file (errno: 155)
+ </para>
+ <para>
+ This was a Windows-only bug. Table administration statements
+ sometimes failed with "Can't lock file (errno: 155)".
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
+ <para>
+ The fix introduces the following changes in behavior:
+ </para>
+
+ <itemizedlist>
+
+ <listitem>
+ <para>
+ This patch changes the behavior of temporary
+ <literal>MERGE</literal> tables. Temporary
+ <literal>MERGE</literal> must have temporary children. The
+ old behavior was wrong. A temporary table is not locked.
+ Hence even non-temporary children were not locked. See Bug
+ #19627.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ You cannot change the union list of a non-temporary
+ <literal>MERGE</literal> table when LOCK TABLES is in
+ effect. The following does <emphasis>not</emphasis> work:
+<programlisting>CREATE TABLE m1 ... ENGINE=MRG_MYISAM ...;
+ LOCK TABLES t1 WRITE, t2 WRITE, m1 WRITE;
+ ALTER TABLE m1 ... UNION=(t1,t2) ...;</programlisting>
+ However, you can do this with a temporary
+ <literal>MERGE</literal> table.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ You cannot create a <literal>MERGE</literal> table with
+ <literal>CREATE ... SELECT</literal>, neither as a temporary
+ <literal>MERGE</literal> table, nor as a non-temporary
+ <literal>MERGE</literal> table. For example:
+<programlisting>CREATE TABLE m1 ... ENGINE=MRG_MYISAM ... SELECT ...;</programlisting>
+ Gives error message: table is not <literal>BASE
+ TABLE</literal>.
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
+ </message>
+
+ </logentry>
+
+ <logentry entrytype="bug">
+
+ <tags>
+ <manual type="mysql_install_db"/>
+ <highlight type="incompatiblechange"/>
+ </tags>
+
+ <bugs>
+ <fixes bugid="30759"/>
+ </bugs>
+
+ <versions>
+ <version ver="5.1.23"/>
+ <version ver="6.0.4"/>
+ </versions>
+
+ <message>
+
+ <para>
+ The <literal>mysql_install_db</literal> script could fail to
+ locate some components (including <command>resolveip</command>)
+ during execution if the <option>--basedir</option> option was
+ specified on the command-line or within the
+ <filename>my.cnf</filename> file. This was due to a conflict
+ when comparing the compiled-in values and the supplied values.
+ </para>
+
+ <para>
+ The <literal>--source-install</literal> command-line option to
+ the script has been removed and replaced with the
+ <literal>--srcdir</literal> option.
+ <command>mysql_install_db</command> now locates components
+ either using the compiled-in options, the
+ <option>--basedir</option> option or <option>--srcdir</option>
+ option.
+ </para>
+
+ </message>
+
+ </logentry>
+
+ <logentry entrytype="bug">
+
+ <tags>
+ <manual type="mysql"/>
+ </tags>
+
+ <bugs>
+ <fixes bugid="18431"/>
+ </bugs>
+
+ <versions>
+ <version ver="5.0.54"/>
+ <version ver="5.1.23"/>
+ <version ver="6.0.4"/>
+ </versions>
+
+ <message>
+
+ <para>
+ The <literal>readline</literal> library has been updated to
+ version 5.2. This addresses issues in the
+ <command>mysql</command> client where history and editing within
+ the client would fail to work as expected.
+ </para>
+
+ </message>
+
+ </logentry>
+
+</changelog>
Modified: trunk/dynamic-docs/changelog/mysqld.xml
===================================================================
--- trunk/dynamic-docs/changelog/mysqld.xml 2007-12-03 10:47:28 UTC (rev 9061)
+++ trunk/dynamic-docs/changelog/mysqld.xml 2007-12-03 10:50:38 UTC (rev 9062)
Changed blocks: 3, Lines Added: 3, Lines Deleted: 5; 922 bytes
@@ -36850,10 +36850,9 @@
</logentry>
- <logentry entrytype="feature">
+ <logentry entrytype="bug">
<tags>
- <highlight type="incompatiblechange"/>
<manual type="DELETE"/>
</tags>
@@ -120735,8 +120734,7 @@
<para>
<function role="sql">STR_TO_DATE()</function> displayed an error
- message that referred to
- <function>STR_TO_TIME()</function>.
+ message that referred to <function>STR_TO_TIME()</function>.
</para>
</message>
@@ -137124,7 +137122,7 @@
</logentry>
- <logentry entrytype="bug">
+ <logentry entrytype="feature">
<tags>
<highlight type="incompatiblechange"/>
Modified: trunk/refman-5.1/se-merge.xml
===================================================================
--- trunk/refman-5.1/se-merge.xml 2007-12-03 10:47:28 UTC (rev 9061)
+++ trunk/refman-5.1/se-merge.xml 2007-12-03 10:50:38 UTC (rev 9062)
Changed blocks: 1, Lines Added: 40, Lines Deleted: 7; 2042 bytes
@@ -704,15 +704,48 @@
</para>
</listitem>
+ <listitem>
+ <para>
+ As of MySQL 5.1.20, if a <literal>MERGE</literal> table cannot
+ be opened or used because of a problem with an underlying
+ table, <literal>CHECK TABLE</literal> displays information
+ about which table caused the problem.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Starting with MySQL 5.1.23, you cannot change the union list
+ of a non-temporary <literal>MERGE</literal> table when LOCK
+ TABLES is in effect. The following does
+ <emphasis>not</emphasis> work:
+
+<programlisting>CREATE TABLE m1 ... ENGINE=MRG_MYISAM ...;
+ LOCK TABLES t1 WRITE, t2 WRITE, m1 WRITE;
+ ALTER TABLE m1 ... UNION=(t1,t2) ...;</programlisting>
+
+ However, you can do this with a temporary
+ <literal>MERGE</literal> table.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Starting with MySQL 5.1.23, you cannot create a
+ <literal>MERGE</literal> table with <literal>CREATE ...
+ SELECT</literal>, neither as a temporary
+ <literal>MERGE</literal> table, nor as a non-temporary
+ <literal>MERGE</literal> table. For example:
+
+<programlisting>CREATE TABLE m1 ... ENGINE=MRG_MYISAM ... SELECT ...;</programlisting>
+
+ Gives error message: table is not <literal>BASE
+ TABLE</literal>.
+ </para>
+ </listitem>
+
</itemizedlist>
- <para>
- As of MySQL 5.1.20, if a <literal>MERGE</literal> table cannot be
- opened or used because of a problem with an underlying table,
- <literal>CHECK TABLE</literal> displays information about which
- table caused the problem.
- </para>
-
</section>
</section>
Modified: trunk/refman-6.0/se-merge.xml
===================================================================
--- trunk/refman-6.0/se-merge.xml 2007-12-03 10:47:28 UTC (rev 9061)
+++ trunk/refman-6.0/se-merge.xml 2007-12-03 10:50:38 UTC (rev 9062)
Changed blocks: 1, Lines Added: 31, Lines Deleted: 0; 1436 bytes
@@ -651,6 +651,37 @@
</para>
</listitem>
+ <listitem>
+ <para>
+ Starting with MySQL 6.0.4, you cannot change the union list of
+ a non-temporary <literal>MERGE</literal> table when LOCK
+ TABLES is in effect. The following does
+ <emphasis>not</emphasis> work:
+
+<programlisting>CREATE TABLE m1 ... ENGINE=MRG_MYISAM ...;
+ LOCK TABLES t1 WRITE, t2 WRITE, m1 WRITE;
+ ALTER TABLE m1 ... UNION=(t1,t2) ...;</programlisting>
+
+ However, you can do this with a temporary
+ <literal>MERGE</literal> table.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Starting with MySQL 6.0.4, you cannot create a
+ <literal>MERGE</literal> table with <literal>CREATE ...
+ SELECT</literal>, neither as a temporary
+ <literal>MERGE</literal> table, nor as a non-temporary
+ <literal>MERGE</literal> table. For example:
+
+<programlisting>CREATE TABLE m1 ... ENGINE=MRG_MYISAM ... SELECT ...;</programlisting>
+
+ Gives error message: table is not <literal>BASE
+ TABLE</literal>.
+ </para>
+ </listitem>
+
</itemizedlist>
</section>
| Thread |
|---|
| • svn commit - mysqldoc@docsrva: r9062 - in trunk: dynamic-docs/changelog refman-5.1 refman-6.0 | mcbrown | 3 Dec |