Fonctionnalités ajoutées ou modifiées :
Updated version of libedit to 2.9. (Bug#2596)
InnoDB: When
FOREIGN_KEY_CHECKS=0, ALTER
TABLE and RENAME TABLE will
ignore any type incompatibilities between referencing and
referenced columns. Thus, it will be possible to convert the
character sets of columns that participate in a foreign key.
Be sure to convert all tables before modifying any data!
(Bug#9802)
Previously in MySQL 4.1, an Illegal mix of
collations error occurred when mixing strings from
same character set when one had a non-binary collation and
the other a binary collation. Now the binary collation takes
precedence, so that both strings are treated as having the
binary collation. This restores compatibility with MySQL 4.0
behavior.
Bogues corrigés :
Security fix: If
mysqld was started with
--user=,
it would run using the privileges of the account it was
invoked from, even if that was non_existent_userroot. (Bug#9833)
MAX() for an INT
UNSIGNED (unsigned 4-byte integer) column could
return negative values if the column contained values larger
than 2^31. (Bug#9298)
Fixed a deadlock resulting from use of FLUSH TABLES
WITH READ LOCK while an INSERT
DELAYED statement is in progress. (Bug#7823)
Multiple-table updates could produce spurious data-truncation warnings if they used a join across columns that are indexed using a column prefix. (Bug#9103)
Use of a subquery that used WITH ROLLUP
in the FROM clause of the main query
sometimes resulted in a Column cannot be
null error. (Bug#9681)
RENAME TABLE for an
ARCHIVE table failed if the
.arn file was not present. (Bug#9911)
Fixed an optimizer problem where extraneous comparisons
between NULL values in indexed columns
were being done for operators such as =
that are never true for NULL. (Bug#8877)
SELECT
ROUND( produced a
different result than expr)CREATE TABLE ... SELECT
ROUND(. (Bug#9837)
expr)
Fixed some awk script portability problems in cmd-line-utils/libedit/makelist.sh. (Bug#9954)
Changed metadata for result of SHOW KEYS:
Data type for Sub_part column now is
SMALLINT rather than
TINYINT because key part length can be
longer than 255. (Bug#9439)
Fixed some problems with myisampack on 64-bit systems that resulted in segmentation violations. (Bug#9487)
Fixed an optimizer bug in computing the union of two ranges
for the OR operator. (Bug#9348)
Fixed an index corruption problem for
MyISAM tables that resulted from the 4.1
behavior of padding values with blanks for comparison:
Dumping a table with mysqldump, reloading
it, and then re-running the binary log against it crashed
the index and necessitated a repair. (Bug#9188)
Fixed a segmentation fault in mysqlcheck
that occurred when the last table checked in
--auto-repair mode returned an error (such
as the table being a MERGE table). (Bug#9492)
Fixed the client/server protocol for prepared statements so that reconnection works properly when the connection is killed while reconnect is enabled. (Bug#8866)
INSERT ... ON DUPLICATE KEY UPDATE
incorrectly updated a TIMESTAMP column to
the current timestamp, even if the update list included
for that
column to prevent the update. (Bug#7806)
col_name =
col_name
Starting mysqld with the
--skip-innodb and
--default-storage-engine=innodb (or
--default-table-type=innodb caused a server
crash. (Bug#9815)
Queries containing CURRENT_USER()
incorrectly were registered in the query cache. (Bug#9796)
A server installed as a Windows service and started with
--shared-memory could not be stopped. (Bug#9665)
mysqldump dumped core when invoked with
--tmp and
--single-transaction options and a
non-existent table name. (Bug#9175)
Additional fix for mysql_server_init()
and mysql_server_end() C API functions so
that stopping and restarting the embedded server will not
cause a crash. (Bug#7344)
mysql.server no longer uses non-portable alias command or LSB functions. (Bug#9852)
Fixed a readline-related crash in
mysql when the user pressed Control-R.
(Bug#9568)
TIMEDIFF() with a negative time first
argument and postive time second argument produced incorrect
results. (Bug#8068)
Fixed a bug that caused concurrent inserts to be allowed
into the tables in the SELECT ... UNION
... part of INSERT ... SELECT ... UNION
.... This could result in the incorrect order of
queries in the binary log. (Bug#9922)
Warning message from GROUP_CONCAT() did
not always indicate correct number of lines. (Bug#8681)
InnoDB: ENUM and SET
columns were treated incorrectly as character strings. This
bug did not manifest itself with latin1
collations, but it caused malfunction with
utf8. Old tables will continue to work.
In new tables, ENUM and
SET will be internally stored as unsigned
integers. (Bug#9526)
InnoDB: Avoid test suite failures caused by a locking conflict between two server instances at server shutdown/startup. This conflict on advisory locks appears to be the result of a bug in the operating system; these locks should be released when the files are closed, but somehow that does not always happen immediately in Linux. (Bug#9381)
InnoDB: Prevent ALTER
TABLE from changing the storage engine if there
are foreign key constraints on the table. (Bug#5574, Bug#5670)
InnoDB: Fixed a deadlock without any
locking, simple select and update. (Bug#7975)
InnoDB now takes an exclusive lock when
INSERT ON DUPLICATE KEY UPDATE is
checking duplicate keys.
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.
