Dear MySQL users,
MySQL Community Server 5.1.50, a new version of the popular Open
Source Database Management System, has been released. MySQL 5.1.50 is
recommended for use on production systems.
For an overview of what's new in MySQL 5.1, please see
For information on installing MySQL 5.1.50 on new servers or upgrading
to MySQL 5.1.50 from previous MySQL releases, please see
MySQL Server is available in source and binary form for a number of
platforms from our download pages at
Not all mirror sites may be up to date at this point in time, so if
you can't find this version on some mirror, please try again later or
choose another download site.
We welcome and appreciate your feedback, bug reports, bug fixes,
For information on open issues in MySQL 5.1, please see the errata
The following section lists the changes in the MySQL source code since
the previous released version of MySQL 5.1. It may also be viewed
C.1.1. Changes in MySQL 5.1.50 (03 August 2010)
* InnoDB Plugin has been upgraded to version 1.0.11. This
version is considered of General Availability (GA) quality.
In this release, the InnoDB Plugin is included in source and
binary distributions, except RHEL3, RHEL4, SuSE 9 (x86,
x86_64, ia64), generic Linux RPM packages, and any builds
produced with the icc compiler. It also does not work for
FreeBSD 6 and HP-UX or for Linux on generic ia64.
* Important Change: Replication: The LOAD DATA INFILE statement
is now considered unsafe for statement-based replication. When
using statement-based logging mode, the statement now produces
a warning; when using mixed-format logging, the statement is
made using the row-based format.
* Partitioning: UPDATE and INSERT statements affecting
partitioned tables performed poorly when using row-based
* Partitioning: INSERT ON DUPLICATE KEY UPDATE statements
performed poorly on tables having many partitions. This was
because the handler function for reading a row from a specific
index was not optimized in the partitioning handler.
* The server could crash on shutdown, if started with
* GROUP BY operations used max_sort_length inconsistently.
* Building MySQL on Solaris 8 x86 failed when using Sun Studio
due to gcc inline assembler code.
* In debug builds, an assertion could be raised when the server
tried to send an OK packet to the client after having failed
to detect errors during processing of the WHERE condition of
an UPDATE statement.
* The database server could crash when renaming a table that had
active transactions. (This issue only affected the database
server when built for debugging.)
* The server could crash during the recovery phase of startup,
if it previously crashed while inserting BLOB or other large
columns that use off-page storage into an InnoDB table created
with ROW_FORMAT=REDUNDANT or ROW_FORMAT=COMPACT.
* For an InnoDB table created with ROW_FORMAT=COMPRESSED or
ROW_FORMAT=DYNAMIC, a query using the READ UNCOMMITTED
isolation level could cause the server to stop with an
assertion error, if BLOB or other large columns that use
off-page storage were being inserted at the same time.
* A client could supply data in chunks to a prepared statement
parameter other than of type TEXT or BLOB using the
mysql_stmt_send_long_data() C API function (or
COM_STMT_SEND_LONG_DATA command). This led to a crash because
other data types are not valid for long data.
* mysql_secure_installation did not properly identify local
accounts and could incorrectly remove nonlocal root accounts.
* Transactions could be incorrectly committed during recovery,
rather than rolled back, if the server crashed and was
restarted after performing ALTER TABLE...ADD PRIMARY KEY on an
InnoDB table, or some other operation that involves copying
the entire table.
* Portability problems in SHOW STATUS could lead to incorrect
results on some platforms.
* Builds of MySQL generated a large number of warnings.
* With lower_case_table_names set to a nonzero value, searches
for table or database names in INFORMATION_SCHEMA tables could
produce incorrect results.
* The ABI check for MySQL failed to compile with gcc 4.5.
* mysql_secure_installation sometimes failed to locate the mysql
client. (Bug#52274: http://bugs.mysql.com/bug.php?id=52274)
* Reading a ucs2 data file with LOAD DATA INFILE was subject to
three problems. 1) Incorrect parsing of the file as ucs2 data,
resulting in incorrect length of the parsed string. This is
fixed by truncating the invalid trailing bytes (incomplete
multibyte characters) when reading from the file. 2) Reads
from a proper ucs2 file did not recognize newline characters.
This is fixed by first checking whether a byte is a newline
(or any other special character) before reading it as a part
of a multibyte character. 3) When using user variables to hold
column data, the character set of the user variable was set
incorrectly to the database charset. This is fixed by setting
it to the character set specified in the LOAD DATA INFILE
statement, if any.
* Searches in INFORMATION_SCHEMA tables for rows matching a
nonexistent database produced an error instead of an empty
* On FreeBSD, memory mapping for MERGE tables could fail if
underlying tables were empty.
* The my_like_range_xxx() functions returned badly formed
maximum strings for Asian character sets, which caused
problems for storage engines.
* A debugging assertion could be raised after a write failure to
a closed socket.
* An assertion failure occurred within yaSSL for very long keys.
See also Bug#53463: http://bugs.mysql.com/bug.php?id=53463.
MySQL RE Team
Karen Langford MySQL Release Engineer
Database Group, Oracle.
|• MySQL Community Server 5.1.50 has been released||Karen Langford||19 Aug|