Hi, MySQL 4.1.14, a new version of the popular Open Source Database Management System, has been released. The Community Edition is now available in source and binary form for a number of platforms from our download pages at http://dev.mysql.com/downloads/ and mirror sites.
Note that not all mirror sites may be up to date at this point in time - if you can't find this version on some mirror, please try again later or choose another download site. This is a bugfix release for the current production version. Please refer to our bug database at http://bugs.mysql.com/ for more details about the individual bugs fixed in this version. News from the ChangeLog: Functionality added or changed: * SHOW CHARACTER SET and INFORMATION_SCHEMA now properly report the Latin1 character set as cp1252. (Bug #11216 (http://bugs.mysql.com/11216)) * MySQL Cluster: A new -p option is available for use with the ndb_mgmd client. When called with this option, ndb_mgmd prints all configuration data to stdout, then exits. * The output of perror --help now displays the --ndb option. (Bug #11999 (http://bugs.mysql.com/11999)) * NDB: Improved handling of the configuration variables NoOfPagesToDiskDuringRestartACC, NoOfPagesToDiskAfterRestartACC, NoOfPagesToDiskDuringRestartTUP, and NoOfPagesToDiskAfterRestartTUP should result in noticeably faster startup times for MySQL Cluster. (Bug #12149 (http://bugs.mysql.com/12149)) * Added support of where clause for queries with FROM DUAL. (Bug #11745 (http://bugs.mysql.com/11745)) * Added an optimization that avoids key access with NULL keys for the ref method when used in outer joins. (Bug #12144 (http://bugs.mysql.com/12144)) * Added new query cache test for the embedded server to the test suite, there are now specific tests for the embedded and non-embedded servers. (Bug #9508 (http://bugs.mysql.com/9508)) * Query cache is switched off if a thread (connection) has tables locked. This prevents invalid results where the locking thread inserts values between a second thread connecting and selecting from the table. (Bug #12385 (http://bugs.mysql.com/12385)) Bugs fixed: * Slave I/O threads were considered to be in the running state when launched (rather than after successfully connecting to the master server), resulting in incorrect SHOW SLAVE STATUS output. (Bug #10780 (http://bugs.mysql.com/10780)) * On Windows, the server could crash during shutdown if both replication threads and normal client connection threads were active. (Bug #11796 (http://bugs.mysql.com/11796)) * Some subqueries of the form SELECT ... WHERE ROW(...) IN (subquery) were being handled incorrectly. (Bug #11867 (http://bugs.mysql.com/11867)) * The mysql_info() C API function could return incorrect data when executed as part of a multi-statement that included a mix of statements that do and do not return information. (Bug #11688 (http://bugs.mysql.com/11688)) * Renamed the rest() macro in my_list.h to list_rest() to avoid name clashes with user code. (Bug #12327 (http://bugs.mysql.com/12327)) * myisampack failed to delete .TMD temporary files when run with -T option. (Bug #12235 (http://bugs.mysql.com/12235)) * Concatenating USER()/DATEBASE() with a column produces invalid results. (Bug #12351 (http://bugs.mysql.com/12351)) * For PKG installs on Mac OS X, the preinstallation and postinstallation scripts were being run only for new installations and not for upgrade installations, resulting in an incomplete installation process. (Bug #11380 (http://bugs.mysql.com/11380)) * User variables were not automatically cast for comparisons, causing queries to fail if the column and connection character sets differed. Now when mixing strings with different character sets but the same coercibility, allow conversion if one character set is a superset of the other. (Bug #10892 (http://bugs.mysql.com/10892)) * Pathame values for options such as ---basedir or --datadir didn't work on Japanese Windows machines for directory names containing multibyte characters having a second byte of 0x5C ('\'). (Bug #5439 (http://bugs.mysql.com/5439)) * Mishanding of comparison for rows containg NULL values against rows produced by an IN subquery could cause a server crash. (Bug #12392 (http://bugs.mysql.com/12392)) * INSERT ... SELECT ... ON DUPLICATE KEY UPDATE could fail with an erroneous "Column 'col_name' specified twice" error. (Bug #10109 (http://bugs.mysql.com/10109)) * myisam.test failed when server compiled using --without-geometry option. (Bug #11083 (http://bugs.mysql.com/11083)) * Creation of the mysql group account failed during the RPM installation. (Bug #12348 (http://bugs.mysql.com/12348)) * FLUSH TABLES WITH READ LOCK combined with LOCK TABLE .. WRITE caused deadlock. (Bug #9459 (http://bugs.mysql.com/9459)) * GROUP_CONCAT ignores the DISTINCT modifier when used in a query joining multiple tables where one of the tables has a single row. (Bug #12095 (http://bugs.mysql.com/12095)) * UNION query with FULLTEXT could cause server crash. (Bug #11869 (http://bugs.mysql.com/11869)) * Performing DATE(LEFT(column,8)) on a DATE column produces incorrect results. (Bug #12266 (http://bugs.mysql.com/12266)) * max_connections_per_hour setting was being capped by unrelated max_user_connections setting. (Bug #9947 (http://bugs.mysql.com/9947)) * big5 strings were not being stored in FULLTEXT index. (Bug #12075 (http://bugs.mysql.com/12075)) * Updated dependency list for RPM builds to include missing dependencies such as useradd and groupadd. (Bug #12233 (http://bugs.mysql.com/12233)) * Multiplying ABS() output by a negative number would return incorrect results. (Bug #11402 (http://bugs.mysql.com/11402)) * SELECT @@local... returned @@session... in the column header. (Bug #10724 (http://bugs.mysql.com/10724)) * Character data truncated when GBK characters 0xA3A0 and 0xA1 are present. (Bug #11987 (http://bugs.mysql.com/11987)) * Comparisons like SELECT "A\\" LIKE "A\\"; fail when using SET NAMES utf8;. (Bug #11754 (http://bugs.mysql.com/11754)) * Attempting to repair a table having a fulltext index on a column containing words whose length exceeded 21 characters and where myisam_repair_threads was greater than 1 would crash the server. (Bug #11684 (http://bugs.mysql.com/11684)) * Two threads could potentially initialize different characters sets and overwrite each other. (Bug #12109 (http://bugs.mysql.com/12109)) * NDB: Attempting to create or drop tables during a backup would cause the cluster to shut down. (Bug #11942 (http://bugs.mysql.com/11942)) * NDB_MGMD was leaking file descriptors. (Bug #11898 (http://bugs.mysql.com/11898)) * NDB ignored the Hostname option in the NDBD DEFAULT section of the NDB configuration file. (Bug #12028 (http://bugs.mysql.com/12028)) * The temporary tables created by an ALTER TABLE on a cluster table were visible to all MySQL servers. (Bug #12055 (http://bugs.mysql.com/12055)) * For prepared statements, the SQL parser did not disallow '?' parameter markers immediately adjacent to other tokens, which could result in malformed statements in the binary log. (For example, SELECT * FROM t WHERE? = 1 could become SELECT * FROM t WHERE0 = 1.) (Bug #11299 (http://bugs.mysql.com/11299)) * GROUP_CONCAT() sometimes returned a result with a different collation that that of its arguments. (Bug #10201 (http://bugs.mysql.com/10201)) * When two threads compete for the same table, a deadlock could occur if one thread has also a lock on another table through LOCK TABLES and the thread is attempting to remove the table in some manner and the other thread want locks on both tables. (Bug #10600 (http://bugs.mysql.com/10600)) * Incorrect error message displayed if user attempted to create a table in a non-existing database using CREATE database_name.table_name syntax. (Bug #10407 (http://bugs.mysql.com/10407)) * The LPAD() and RPAD() functions returned the wrong length to mysql_fetch_fields(). (Bug #11311 (http://bugs.mysql.com/11311)) * The C API function mysql_statement_reset() did not clear error information. (Bug #11183 (http://bugs.mysql.com/11183)) * Multiple-table UPDATE queries using CONVERT_TZ() would fail with an error. (Bug #9979 (http://bugs.mysql.com/9979)) * mysql_fetch_fields() returned incorrect length information for MEDIUM and LONG TEXT and BLOB columns. (Bug #9735 (http://bugs.mysql.com/9735)) * LIKE pattern matching using prefix index didn't return correct result. (Bug #11650 (http://bugs.mysql.com/11650)) * The MySQL server had issues with certain combinations of basedir and datadir. (Bug #7249 (http://bugs.mysql.com/7249)) * mysql_next_result() returns incorrect value if final query in a batch fails. (Bug #12001 (http://bugs.mysql.com/12001)) * SHOW BINARY LOGS displayed a file size of 0 for all log files but the current one if the files were not located in the data directory. (Bug #12004 (http://bugs.mysql.com/12004)) * Server-side prepared statements failed for columns with a character set of ucs2. (Bug #9442 (http://bugs.mysql.com/9442)) * References to system variables in an SQL statement prepared with PREPARE were evaluated during EXECUTE to their values at prepare time, not to their values at execution time. (Bug #9359 (http://bugs.mysql.com/9359)) * For server shutdown on Windows, error messages of the form Forcing close of thread n user: 'name' were being written to the error log. Now connections are closed more gracefully without generating error messages. (Bug #7403 (http://bugs.mysql.com/7403)) * Corrected a problem with the optimizer incorrectly adding NOT NULL constraints, producing in incorrect results for complex queries. (Bug #11482 (http://bugs.mysql.com/11482)) * Corrected an optimizer problem with NOT NULL constraints within a subquery in an UPDATE statement that resulted in a server crash. (Bug #11868 (http://bugs.mysql.com/11868)) * Creating a table with a SET or ENUM column with the DEFAULT 0 clause caused a server crash if the table's character set was utf8. (Bug #11819 (http://bugs.mysql.com/11819)) * In SQL prepared statements, comparisons could fail for values not equally space-padded. For example, SELECT 'a' = 'a '; returns 1, but PREPARE s FROM 'SELECT ?=?'; SET @a = 'a', @b = 'a '; PREPARE s FROM 'SELECT ?=?'; EXECUTE s USING @a, @b; incorrectly returned 0. (Bug #9379 (http://bugs.mysql.com/9379)) * InnoDB: Do not flush after each write, not even before setting up the doublewrite buffer. Flushing can be extremely slow on some systems. (Bug #12125 (http://bugs.mysql.com/12125)) * ISO-8601 formatted dates were not being parsed correctly. (Bug #7308 (http://bugs.mysql.com/7308)) Bye, Joerg -- Joerg Bruehe, Senior Production Engineer MySQL AB, www.mysql.com -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]