Functionality Added or Changed
When invoked with the
--auto-generate-sql option,
mysqlslap dropped the schema specified with
the --create-schema option at
the end of the test run, which may have been unexpected by the
user. mysqlslap now has a
--no-drop option that prevents
any schema created during the test run from being dropped.
(Bug #58090, Bug #11765157)
A new system variable,
max_long_data_size, now
controls the maximum size of parameter values that can be sent
with the
mysql_stmt_send_long_data() C
API function. If not set at server startup, the default is the
value of the max_allowed_packet
system variable. This variable is deprecated. In MySQL 5.6, it
is removed and the maximum parameter size is controlled by
max_allowed_packet.
Bugs Fixed
InnoDB; Replication:
Trying to update a column, previously set to
NULL, of an
InnoDB table with no primary key
caused replication to fail on the slave with Can't
find record in 'table'.
This issue was inadvertently reintroduced in MySQL 5.6.6, and fixed again in MySQL 5.6.12.
(Bug #11766865, Bug #60091)
References: See also Bug #16566658.
InnoDB:
The server could halt if InnoDB interpreted a
very heavy I/O load for 15 minutes or more as an indication that
the server was hung. This change fixes the logic that measures
how long InnoDB threads were waiting, which
formerly could produce false positives.
(Bug #11877216, Bug #11755413, Bug #47183)
InnoDB:
The MySQL server could hang during CREATE
TABLE, OPTIMIZE TABLE, or
ALTER TABLE or other DDL operation that
performs a table copy for an InnoDB table, if
such operations were performed by multiple sessions
simultaneously. The error was reported as:
InnoDB: Error: semaphore wait has lasted > 600 seconds
(Bug #11760042, Bug #52409)
Partitioning:
A problem with a previous fix for poor performance of
INSERT ON DUPLICATE KEY
UPDATE statements on tables having many partitions
caused the handler function for reading a row from a specific
index to fail to store the ID of the partition last used. This
caused some statements to fail with Can't find
record errors.
(Bug #59297, Bug #11766232)
References: This bug is a regression of Bug #52455.
Replication:
Using the --server-id option
with mysqlbinlog could cause format
description log events to be filtered from the binary log,
leaving mysqlbinlog unable to read the
remainder of the log. Now such events are always read without
regard to the value of this option.
As part of the fix for this problem,
mysqlbinlog now also reads rotate log events
without regard to the value of
--server-id.
(Bug #59530, Bug #11766427)
InnoDB invoked some
zlib functions without proper initialization.
(Bug #11849231)
Two unused test files in
storage/ndb/test/sql contained incorrect
versions of the GNU Lesser General Public License. The files and
the directory containing them have been removed.
(Bug #11810224)
References: See also Bug #11810156.
The server read one byte too many when trying to process an XML
string lacking a closing single quote (') or
double quote (") character used as an
argument for UpdateXML() or
ExtractValue().
(Bug #59901, Bug #11766725)
References: See also Bug #44332, Bug #11752979.
Aggregation followed by a subquery could produce an incorrect result. (Bug #59839, Bug #11766675)
mysqldump did not quote database names in
ALTER DATABASE statements in its
output, which could cause an error at reload time for database
names containing a dash.
(Bug #59398, Bug #11766310)
SHOW EVENTS did not always show
events from the correct database.
(Bug #41907, Bug #11751148)
A potential invalid memory access discovered by Valgrind was fixed. (Bug #48053, Bug #11756169)
Bitmap functions used in one thread could change bitmaps used by other threads, raising an assertion. (Bug #43152, Bug #11752069)
Attempting to create a spatial index on a
CHAR column longer than 31 bytes
led to an assertion failure if the server was compiled with
safemutex support.
(Bug #59888, Bug #11766714)
An incorrect character set pointer passed to
my_strtoll10_mb2() caused an assertion to be
raised.
(Bug #59648, Bug #11766519)
The code for PROCEDURE ANALYSE() had a
missing DBUG_RETURN statement, which could
cause a server crash in debug builds.
(Bug #58140, Bug #11765202)
For a client connected using SSL, the
Ssl_cipher_list status
variable was empty and did not show the possible cipher types.
(Bug #52596, Bug #11760210)
In Item::get_date, a Valgrind warning for a
missing NULL value check was corrected.
(Bug #59164, Bug #11766124)
In Item_func_month::val_str(), a Valgrind
warning for a too-late NULL value check was
corrected.
(Bug #59166, Bug #11766126)
In Item_func::val_decimal, a Valgrind warning
for a missing NULL value check was corrected.
(Bug #59125, Bug #11766087)
In Item_func_str_to_date::val_str, a Valgrind
warning for an uninitialized variable was corrected.
(Bug #58154, Bug #11765216)
In extract_date_time(), a Valgrind warning
for a missing end-of-string check was corrected.
(Bug #59151, Bug #11766112)
A missing variable initialization for
Item_func_set_user_var objects could raise an
assertion.
(Bug #59527, Bug #11766424)
In string context, the MIN() and
MAX() functions did not take into
account the unsignedness of a BIGINT UNSIGNED
argument.
(Bug #59132, Bug #11766094)
An assertion could be raised if a statement that required a name
lock on a table (for example, DROP
TRIGGER) executed concurrently with an
INFORMATION_SCHEMA query that also used the
table.
(Bug #56541, Bug #11763784)
An assertion could be raised in
Item_func_int_val::fix_num_length_and_dec()
due to overflow for geometry functions.
(Bug #57900, Bug #11764994)
With lower_case_table_names=2,
resolution of objects qualified by database names could fail.
(Bug #50924, Bug #11758687)
The server permitted
max_allowed_packet to be set
lower than net_buffer_length,
which does not make sense because
max_allowed_packet is the upper
limit on net_buffer_length
values. Now a warning occurs and the value remains unchanged.
(Bug #59959, Bug #11766769)
Selecting from a view for which the definition included a
HAVING clause failed with an error:
1356: View '...' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them
(Bug #60295, Bug #11829681)
