This is a bugfix release for the current production release family.
This section documents all changes and bug fixes that have been applied since the last official MySQL release. If you would like to receive more fine-grained and personalized update alerts about fixes that are relevant to the version and features you use, please consider subscribing to MySQL Enterprise (a commercial MySQL offering). For more details, please see http://www.mysql.com/products/enterprise.
Functionality added or changed:
Important Change: MySQL Cluster:
LOAD DATA
INFILE
no longer causes an implicit commit for all
storage engines. It now causes an implicit commit only for
tables using the NDB
storage
engine.
(Bug#11151)
The number of InnoDB
threads is no longer
limited to 1,000 on Windows.
(Bug#22268)
mysqldump now has a
--flush-privileges
option. It
causes mysqldump to emit a
FLUSH
PRIVILEGES
statement after dumping the
mysql
database. This option should be used
any time the dump contains the mysql
database
and any other database that depends on the data in the
mysql
database for proper restoration.
(Bug#21424)
For mysqldump, the output generated by the
server when using the --xml
option has changed with regard to null values. It now matches
the output from mysqldump
--xml
. That is, a column
containing a NULL
value is now reported as
<field name="column_name
" xsi:nil="true" />
whereas a column containing the string value
'NULL'
is reported as
<field name="column_name
">NULL</field>
and a column containing an empty string is reported as
<field name="column_name
"></field>
The source distribution has been updated so that the UDF example can be compiled under Windows with CMake. See Section 21.2.2.5, “Compiling and Installing User-Defined Functions”. (Bug#19121)
The LOAD DATA FROM MASTER
and LOAD
TABLE FROM MASTER
statements are deprecated. See
Section 12.5.2.2, “LOAD DATA FROM MASTER
Syntax”, for recommended
alternatives.
(Bug#9125, Bug#20596, Bug#14399, Bug#12187, Bug#15025, Bug#18822)
Bugs fixed:
Replication: Column names supplied for a view created on a master server could be lost on a slave server. (Bug#19419)
Deleting entries from a large MyISAM
index
could cause index corruption when it needed to shrink. Deletes
from an index can happen when a record is deleted, when a key
changes and must be moved, and when a key must be un-inserted
because of a duplicate key. This can also happen in
REPAIR TABLE
when a duplicate key
is found and in myisamchk when sorting the
records by an index.
(Bug#22384)
yaSSL had a conflicting definition for
socklen_t
on hurd-i386 systems.
(Bug#22326)
Conversion of values inserted into a
BIT
column could affect adjacent
columns.
(Bug#22271)
mysql_com.h
unnecessarily referred to the
ulong
type.
(Bug#22227)
The source distribution would not build on Windows due to a
spurious dependency on ib_config.h
.
(Bug#22224)
Execution of a prepared statement that uses an
IN
subquery with aggregate functions in the
HAVING
clause could cause a server crash.
(Bug#22085)
Using GROUP_CONCAT()
on the
result of a subquery in the FROM
clause that
itself used GROUP_CONCAT()
could
cause a server crash.
(Bug#22015)
A query that used GROUP BY
and an
ALL
or ANY
quantified
subquery in a HAVING
clause could trigger an
assertion failure.
(Bug#21853)
UPGRADE
was treated as a reserved word,
although it is not.
(Bug#21772)
The value of LAST_INSERT_ID()
was
not always updated correctly within stored routines.
(Bug#21726)
A function result in a comparison was replaced with a constant by the optimizer under some circumstances when this optimization was invalid. (Bug#21698)
If mysqld
was linked against a
system-installed zlib
library compiled
without large-file support, it would likely exit with a
SIGXFSZ
(file size exceeded) signal if an
ARCHIVE
table reached 2GB. The server now
checks for space before writing.
(Bug#21675)
The presence of a subquery in the ON
clause
of a join in a view definition prevented the
MERGE
algorithm from being used for the view
in cases where it should be allowed.
(Bug#21646)
When records are merged from the insert buffer and the page
needs to be reorganized, InnoDB
used
incorrect column length information when interpreting the
records of the page. This caused a server crash due to apparent
corruption of secondary indexes in
ROW_FORMAT=COMPACT
that contain prefix
indexes of fixed-length columns. Data files should not be
corrupted, but the crash was likely to repeat every time the
server was restarted.
(Bug#21638)
For character sets having a mbmaxlen
value of
2, any ALTER TABLE
statement
changed TEXT
columns to
MEDIUMTEXT
.
(Bug#21620)
mysql displayed an empty string for
NULL
values.
(Bug#21618)
For INSERT
... ON DUPLICATE KEY UPDATE
, use of
VALUES(
within the col_name
)UPDATE
clause
sometimes was handled incorrectly.
(Bug#21555)
Subqueries with aggregate functions but no
FROM
clause could return incorrect results.
(Bug#21540)
The server could crash for the second execution of a function
containing a SELECT
statement
that uses an aggregating IN
subquery.
(Bug#21493)
myisam_ftdump produced bad counts for common words. (Bug#21459)
The URL into the online manual that is printed in the stack trace message by the server was out of date. (Bug#21449)
Table aliases in multiple-table
DELETE
statements sometimes were
not resolved.
(Bug#21392)
mysql_config --libmysqld-libs did not produce
any SSL options necessary for linking
libmysqld
with SSL support enabled.
(Bug#21239)
In the package of pre-built time zone tables that is available
for download at
http://dev.mysql.com/downloads/timezones.html,
the tables now explicitly use the utf8
character set so that they work the same way regardless of the
system character set value.
(Bug#21208)
A subquery that uses an index for both the
WHERE
and ORDER BY
clauses
produced an empty result.
(Bug#21180)
mysql_upgrade produced a malformed
upgrade_defaults
file by overwriting the
[client]
group header with a
password
option. This prevented
mysqlcheck from running successfully when
invoked by mysql_upgrade.
(Bug#21011)
On Windows, inserting into a MERGE
table
after renaming an underlying MyISAM
table
caused a server crash.
(Bug#20789)
Within stored routines, some error messages were printed incorrectly. A nonnull-terminated string was passed to a message-printing routine that expected a null-terminated string. (Bug#20778)
INSERT DELAYED
did not honor
SET INSERT_ID
or the
auto_increment_*
system variables.
(Bug#20627, Bug#20830)
If the auto_increment_offset
setting causes MySQL to generate a value larger than the
column's maximum possible value, the
INSERT
statement is accepted in
strict SQL mode, whereas but should fail with an error.
(Bug#20573)
User names have a maximum length of 16 characters (even if they contain multi-byte characters), but were being truncated to 16 bytes. (Bug#20393)
PROCEDURE ANALYSE()
returned incorrect values
of M
FLOAT(
and
M
,
D
)DOUBLE(
.
(Bug#20305)M
,
D
)
For a MyISAM
table locked with LOCK
TABLES ...WRITE
, queries optimized using the
index_merge
method did not
show rows inserted with the lock in place.
(Bug#20256)
SUBSTRING()
results sometimes
were stored improperly into a temporary table when multi-byte
character sets were used.
(Bug#20204)
For an ENUM
column that used the
ucs2
character set, using
ALTER TABLE
to modify the column
definition caused the default value to be lost.
(Bug#20108)
Join conditions using index prefixes on utf8
columns of InnoDB
tables incorrectly ignored
rows where the length of the actual value was greater than the
length of the index prefix.
(Bug#19960)
make install tried to build files that should already have been built by make all, causing a failure if installation was performed using a different account than the one used for the initial build. (Bug#19738)
For a MyISAM
table with a
FULLTEXT
index, compression with
myisampack or a check with
myisamchk after compression resulted in table
corruption.
(Bug#19702)
The build process incorrectly tried to overwrite
sql/lex_hash.h
. This caused the build to
fail when using a shadow link tree pointing to original sources
that were owned by another account.
(Bug#18888)
Linking the pthreads
library to
single-threaded MySQL libraries caused
dlopen()
to fail at runtime on HP-UX.
(Bug#18267)
The source distribution failed to compile when configured with
the --with-libwrap
option.
(Bug#18246)
Queries containing a subquery that used aggregate functions could return incorrect results. (Bug#16792)
Row equalities (such as WHERE (a,b) = (c,d)
were not taken into account by the optimizer, resulting in slow
query execution. Now they are treated as conjunctions of
equalities between row elements.
(Bug#16081)
BIN()
,
OCT()
, and
CONV()
did not work with BIT
values.
(Bug#15583)
The parser rejected queries that selected from a table twice
using a UNION
within a subquery.
The parser now supports arbitrary subquery, join, and
parenthesis operations within EXISTS
subqueries. A limitation still exists for scalar subqueries: If
the subquery contains UNION
, the
first SELECT
of the
UNION
cannot be within
parentheses. For example, SELECT (SELECT a FROM t1
UNION SELECT b FROM t2)
will work, but SELECT
((SELECT a FROM t1) UNION (SELECT b FROM t2))
will
not.
(Bug#14654)
On Mac OS X, zero-byte read()
or
write()
calls to an SMB-mounted file system
could return a nonstandard return value, leading to data
corruption. Now such calls are avoided.
(Bug#12620)
The server returns a more informative error message when it
attempts to open a MERGE
table that has been
defined to use non-MyISAM
tables.
(Bug#10974)
With TRADITIONAL
SQL mode,
assignment of out-of-bound values and rounding of assigned
values was done correctly, but assignment of the same numbers
represented as strings sometimes was handled differently.
(Bug#6147)
On an INSERT
into an updatable
but noninsertable view, an error message was issued stating that
the view was not updatable. Now the message says the view is not
insertable-into.
(Bug#5505)
EXPLAIN
sometimes returned an
incorrect select_type
for a
SELECT
from a view, compared to
the select_type
for the equivalent
SELECT
from the base table.
(Bug#5500)
Incorporated portability fixes into the definition of
__attribute__
in
my_global.h
.
(Bug#2717)
User Comments
Add your own comment.