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
|