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:
Security improvement: Applied a patch to fix a UDF library-loading vulnerability that could result in a buffer overflow and code execution. (CVE-2005-2558)
Added --with-big-tables
compilation option to configure.
(Previously it was necessary to pass
-DBIG_TABLES
to the compiler manually in
order to enable large table support.) See
Section 2.9.2, “Typical configure Options”, for details.
Bugs fixed:
On Mac OS X, libmysqlclient_r.a
now is
built with --fno-common
to make it possible
to link a shared two-level namespace library against
libmysqlclient_r.a
. (Bug#10638)
An error in the implementation of the
MyISAM
compression algorithm caused
myisampack
to fail with very large sets of
data (total size of all the records in a single column needed
to be >= 3 GB in order to trigger this issue). (Bug#8321)
A problem with the my_global.h
file
caused compilation of MySQL to fail on single-processor Linux
systems running 2.6 kernels. (Bug#10364)
Fixed a portability problem testing for
crypt()
support that caused compilation
problems when using OpenSSL/yaSSL on HP-UX and Mac OS X.
(Bug#10675, Bug#11150)
MyISAM
table corruption could occur with
ANALYZE TABLE
if a write lock
was acquired with LOCK TABLES
and then an INSERT
or
DELETE
was done prior to
analyzing the table. (Bug#10901)
Fixed a server crash resulting from
CREATE TABLE ...
SELECT
that selected from a table being altered by
ALTER TABLE
. (Bug#10224)
InnoDB
: In DROP
DATABASE
, check for all referencing tables from
other databases before dropping any tables. (Bug#10335)
Fixed a problem with incorrect constant propagation resulting
in incorrect evaluation of AND/OR
queries.
(Bug#10095)
Fixed wrong buffer usage for auto-increment key with blob part
that caused CHECK TABLE
to
report that the table was wrong. (Bug#10045)
No error was raised for BOOLEAN
full-text searches for storage engines that do not support
full-text. (Bug#7709)
The test in configure to see whether
CXX
specified gcc failed
if gcc was specified as a full path name.
(Bug#9690)
In the
mysql_real_escape_string()
C
API function, when a multi-byte character is encountered that
is illegal in the current character set, escape only the first
byte, not each byte. This avoids creating a valid character
from an invalid one. (Bug#9864; this is a backport of Bug#8378
from MySQL 4.1.11 to 4.0.25)
Fixed a deadlock resulting from use of
FLUSH TABLES WITH READ
LOCK
while an INSERT
DELAYED
statement is in progress. (Bug#7823)
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 faulty display of
TIMESTAMP
columns retrieved as
while
the col_name
+0new
system variable is
set to 1. (Bug#8894)
Queries containing
CURRENT_USER()
incorrectly were
registered in the query cache. (Bug#9796)
An UPDATE
that updated only
some of the columns in a multiple-column index could result in
a loop. (Bug#8942)
REPAIR TABLE
did not invalidate
query results in the query cache that were generated from the
table. (Bug#8480)
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)
Fixed a bug that under certain circumstances could allow a
privilege escalation via database wildcards in
GRANT
. (Bug#3924,
CVE-2004-0957)
<=>
was not properly comparing NULL
values in
the WHERE
clause of outer joins. (Bug#8711)
InnoDB: Fixed a bug: MySQL-4.0.23 and 4.0.24 could complain that an InnoDB table created with MySQL-3.23.49 or earlier was in the new compact InnoDB table format of 5.0.3 or later, and InnoDB would refuse to use that table. (The same bug exists in 4.1.8 - 4.1.10.) There is nothing wrong with the table, it is mysqld that is in error. Workaround: wait that 4.0.25 or 4.1.11 is released before doing an upgrade, or dump the table and re-create it with any MySQL version >= 3.23.50 before upgrading to 4.0.23 or 4.0.24.
User Comments
Add your own comment.