End of Product Lifecycle. Active development and support for MySQL Database Server versions 3.23, 4.0, and 4.1 has ended. For details, see http://www.mysql.com/about/legal/lifecycle/#calendar. Please consider upgrading to a recent version. Further updates to the content of this manual will be minimal. All formats of this manual will continue to be available until 31 Dec 2010.
Functionality added or changed:
InnoDB: The
innodb_autoextend_increment
startup option that was introduced in release 4.1.5 was made a
settable global variable.
(Bug#5736)
If a write to a MyISAM table fails because of
a full disk or an exceeded disk quota, it now prints a message
to the error log every 10 minutes, and waits until disk space
becomes available.
(Bug#3248)
TIMESTAMP columns now can store
NULL values. To create such a column, you
must explicitly specify the NULL attribute in
the column specification. (Unlike all other data types,
TIMESTAMP columns are
NOT NULL by default.)
Now if ALTER TABLE converts some
column to TIMESTAMP NOT NULL column it
converts NULL values to current timestamp
value (One can still get old behavior by setting system
TIMESTAMP variable to zero).
Added option --sigint-ignore to the
mysql command line client to make it ignore
SIGINT signals (typically the result of the
user pressing Control-C).
InnoDB: Added the startup option and settable
global variable
innodb_max_purge_lag for
delaying INSERT,
UPDATE and
DELETE operations when the purge
operations are lagging. The default value of this parameter is
zero, meaning that there are no delays. See
Section 13.2.10, “InnoDB Multi-Versioning”.
InnoDB: If DROP
TABLE is invoked on an InnoDB table
for which the .ibd file is missing, print to
error log that the table was removed from the
InnoDB data dictionary, and allow MySQL to
delete the .frm file. Maybe
DROP TABLE should issue a warning
in this case.
On Windows, the MySQL configuration files included in the
package now use .ini instead of
.cnf as the file name suffix.
Now if ALTER TABLE converts one
AUTO_INCREMENT column to another
AUTO_INCREMENT column it preserves zero
values (this includes the case that we don't change such column
at all).
Bugs fixed:
Replication:
SET COLLATION_SERVER... statements replicated
by the slave SQL thread no longer advance its position. This is
so that, if the thread is interrupted before the update is
completed, it later performs the SET again.
(Bug#5705)
InnoDB: Change error code to
HA_ERR_ROW_IS_REFERENCED if we cannot
DROP a parent table referenced by a
FOREIGN KEY constraint; this error number is
less misleading than the previous number
HA_ERR_CANNOT_ADD_FOREIGN, but misleading
still.
(Bug#6202)
The server sometimes chose a nonoptimal execution plan for a prepared statement executed with changed placeholder values. (Bug#6042)
An attempt to execute a prepared statement with a subquery inside a boolean expression caused the server to crash. (Bug#5987)
InnoDB: UTF-8 characters were not always
handled correctly in column prefix indexes.
(Bug#5975)
InnoDB: If one updated a column so that its
size changed, or updated it to an externally stored
(TEXT or
BLOB) value, then ANOTHER
externally stored column would show up as 512 bytes of good data
+ 20 bytes of garbage in a consistent read that fetched the old
version of the row.
(Bug#5960)
Behavior of ALTER TABLE
converting column containing NULL values to
AUTO_INCREMENT column is no longer affected
by NO_AUTO_VALUE_ON_ZERO mode.
.
(Bug#5915)
InnoDB: Make the check for excessive
semaphore waits tolerate glitches in the system clock (do not
crash the server if the system time is adjusted while
InnoDB is under load.).
(Bug#5898)
InnoDB: The FOREIGN KEY
parser di not allow ALTER TABLE
on tables whose names contained # characters.
(Bug#5856)
InnoDB: ALTER TABLE
did
not work correctly.
(Bug#5851)t DISCARD TABLESPACE
If the slave SQL thread finds a syntax error in a query (which should be rare, as the master parsed it successfully), it now stops immediately. (Bug#5711)
The server crashed when character set conversion was implicitly
used in prepared mode, as in 'abc' LIKE CONVERT('abc'
as utf8).
(Bug#5688)
Inserting NULL into an
AUTO_INCREMENT column failed when using
prepared statements.
(Bug#5510)
The mysql_change_user() C API
function now frees all prepared statements associated with the
connection.
(Bug#5315)
InnoDB: SHOW CREATE
TABLE now obeys the SET sql_mode =
ANSI and SET sql_quote_show_create =
0 settings.
(Bug#5292)
InnoDB: CREATE TEMPORARY TABLE ...
ENGINE=InnoDB terminated mysqld
when running in
innodb_file_per_table mode.
Now, per-table for temporary tables are created in the temporary
directory used by mysqld.
(Bug#5137)

User Comments
Add your own comment.