MySQL Community Server 5.7.8 has been released (part 3/3)
Balasubramanian Kandasamy <[email protected]> Mon, 03 Aug 2015 20:34:01 +0530
| Newsgroups | gmane.comp.db.mysql.announce,gmane.comp.db.mysql.general,gmane.comp.db.mysql.packagers |
|---|---|
| Message-ID | <[email protected]> |
[This is part 3 (last) of the announcement ]
* Replication: Using mysqlbinlog to replay a relay log
which ended with GTID_LOG_EVENT could cause the following
error:
ERROR 1790 (HY000) @@SESSION.GTID_NEXT cannot be changed
by a client that owns a GTID. The client owns UUID:GTID.
Ownership is released on COMMIT or ROLLBACK.
If a relay log rotate happens (either through a receiver
thread restart or after issuing the ROTATE command)
exactly after writing a GTID_LOG_EVENT, when replaying
such a relay log's end ROTATE_EVENT, it was mistakenly
identified as being inside a transaction, whereas the
transaction was actually started after GTID_LOG_EVENT.
This caused mysqlbinlog to append SET
@@SESSION.GTID_NEXT='AUTOMATIC', resulting in two
GTID_NEXT statements one after the other. The fix ensures
that mysqlbinlog generates SET
@@SESSION.GTID_NEXT='AUTOMATIC' only outside of a
transaction and when there has not been a previous
GTID_LOG_EVENT.
Similarly, using mysqlbinlog to concatenate and replay a
relay log which contained a partial GTID transaction
caused the above error. A relay log can contain a partial
GTID transaction when AUTO_POSITION is enabled if a
receiver thread is restarted when it is in the middle of
transferring a transaction from a master. On restart the
slave retrieves the full transaction again. In this case,
the first relay log contains a partial GTID transaction
and the second relay log contains the full GTID
transaction again. When using mysqlbinlog to concatenate
such a relay log, the partial transaction was not being
correctly detected and therefore a ROLLBACK was not being
correctly generated. The fix identifies partial GTID
transactions using the format description event of the
second relay log, ensuring that a ROLLBACK is correctly
added. (Bug #70711, Bug #17650326)
* Replication: The replication connection now sends the
program_name attribute, "mysqld", in line with the
behavior of other client connections. In addition, a
_client_role attribute has been added and is set to
"binary_log_listener", to clarify the replication
connection's role, as well as the
_client_replication_channel_name attribute, which is set
to the replication channel's name. Similarly, mysqlbinlog
now sets _client_role to "binary_log_listener". These
changes are exposed through the session_connect_attrs
Performance Schema table. (Bug #68782, Bug #16555723)
* On platforms where char is unsigned, mysql_config_editor
could fail to detect failed operations. Affected
platforms include ARM and PowerPC. (Bug #21355630)
* The Rewriter plugin linked against the mysys library,
which is already linked into the server and thus
available at load time when the plugin is installed. (Bug
#21255496)
* The unused and unmaintained BUILD/build_mccge.sh script
has been removed from the source tree. (Bug #21246941)
* Memory leaks found by enabling AddressSanitizer were
corrected in mysql, mysqlcheck, mysqldump, mysqlshow,
mysqlslap, mysqltest, mysql_client_test, mysql_upgrade,
and mysql_install_db. (Bug #21246627, Bug #21246842, Bug
#21246964, Bug #21247377, Bug #21250562, Bug #21250584,
Bug #21250644, Bug #21250876, Bug #21250947, Bug
#21253535, Bug #21253653, Bug #21254060, Bug #21255860)
* Multiple definitions of key_memory_KEY_CACHE caused
compilation failure when ASAN was enabled. (Bug
#21245718)
* ST_IsValid() could return false for some valid
MultiPolygon arguments. (Bug #21238969)
* ST_Buffer() with a LineString argument could produce a
Polygon that self-intersected. (Bug #21238614)
* Compilation failed when building MySQL without the
Performance Schema. (Bug #21229433)
* Updating the setup_consumers table to set history or
long-history consumers had no affect on historical event
logging for existing threads. (Bug #21223458)
* For debug builds, failure of the range optimizer to
properly propagate errors occurring during partition
pruning could raise an assertion. (Bug #21211492)
* A SET PASSWORD statement that failed with
ER_MUST_CHANGE_PASSWORD could still change the
password_last_changed column for a row in the mysql.user
table. (Bug #21192879)
* An optimizer hint assertion could be raised when a table
was used in both parts of an INSERT INTO ... SELECT
statement. (Bug #21192857)
* The create_tmp_table() return value was not checked,
which could lead to a server exit. (Bug #21190532)
* SHOW GLOBAL STATUS Com_xxx counters did not reflect
SELECT statements. (Bug #21186946)
* Incorrect cost calculation for the semi-join Duplicate
Weedout strategy could result in a server exit. (Bug
#21184091)
* Some Valgrind warnings in Item_type_holder::join_types()
were spurious and have been silenced. (Bug #21156155)
References: This bug was introduced by Bug #19471564.
* ST_ConvexHull() could return incorrect results for
MultiLineString arguments. (Bug #21153716)
* The optimizer hint parser could read freed memory. (Bug
#21148405)
* An event scheduler thread could be freed improperly,
potentially leading to a server exit. (Bug #21145277, Bug
#21053167)
* For debug builds, VIRTUAL generated columns could be
marked writable during read operations and cause an
assertion to be raised for partitioned tables. (Bug
#21142905)
* For debug builds, a missing error test for full-text
searches could cause an assertion to be raised. (Bug
#21140111)
* Outer references do not work as arguments to MATCH(), but
the server did not properly detect them. Now it does and
raises an error. (Bug #21140088)
* EXPLAIN could raise an assertion trying to display very
large full-text search rank values. (Bug #21140067)
* For debug builds, full-text searches could raise an
assertion if the optimizer tried to use a covering index
when that was not appropriate. (Bug #21140039)
* SHOW STATUS and SHOW VARIABLES failed to produce output
if the server was started with the Performance Schema
disabled. (Bug #21139458)
* ST_Intersection() could produce areal and point
intersection results, but was not able to produce linear
intersection results. (Bug #21109896)
* If the server was started with the --ssl-cipher option,
autogeneration and autodetection of SSL certificates did
not work. (Bug #21108296)
* ALTER TABLE statements that defined a generated column
using MATCH ... AGAINST in its expression could raise an
assertion. (Bug #21098119)
* The server could raise an assertion or produce an
incorrect error message for inserts into a view if a
single table for insertion could not be identified. (Bug
#21097485)
* Optimizer hint query block names are identifiers, but the
parser did not recognize valid identifer names such as
123a when used in @query_block_name syntax. (Bug
#21095608)
* SSL certificates autogenerated by the server could have
CN values that exceeded 64 characters. In that case, the
server now omits the _server_version part of the CN
values so the length falls within 64 characters. (Bug
#21087159)
* open_files_limit could be set higher than permitted by
the operating system. (Bug #21074643)
* systemd timeout logic could be triggered if InnoDB log
rebuilding or recovery took too long. Because the time
this may take is unknown, systemd timeout during service
start or stop is now disabled. (Bug #21071740)
* Deallocation of Debug Sync structures within the InnoDB
handlerton close connection method could raise an
assertion. (Bug #21069721)
* Queries on a geometry column returned an error instead of
a result if there existed a UNIQUE index on the column.
(Bug #21067378)
* Comparisons of table names in optimizer hints did not
respect the value of the lower_case_table_names system
variable. (Bug #21056644)
* An assertion could be raised if a multiple-table UPDATE
of a view, where the same column was used in the SET and
JOIN clauses, was used as a prepared statement. (Bug
#21045724)
* With row-based binary logging, automatic dropping of a
scheduled event that had reached the end of its lifetime
could raise an assertion. (Bug #21041908)
* CMake configuration was adjusted to disable unnecessary
warnings reported by Clang and display them only if
-DMYSQL_MAINTAINER_MODE=1 is used. (Bug #21041451)
* If a single-table subquery had identical GROUP BY and
ORDER BY clauses on a UNIQUE NOT NULL column, the results
could be incorrectly ordered. (Bug #21038929)
* The PARSE_GCOL_EXPR keyword used internally by the parser
was treated as a reserved word and thus could not be used
as an identifier without quoting it. (Bug #21035515)
* Multiple executions of a prepared SET statement that used
a subquery could result in a server exit. (Bug #20982756)
* The INDEX_NAME column of the Performance Schema
table_io_waits_summary_by_index_usage table could
sometimes show incorrect index names for tables until
they had been in use for some time. (Bug #20980217)
* With auto_generate_certs enabled, the server
automatically created SSL files if any of ca.pem,
server-cert.pem, and server-key.pem were missing from the
data directory. Now it creates the files only if all of
them are missing (the same test used by
mysql_ssl_rsa_setup). (Bug #20963082)
* The server compiled with Performance Schema support could
not be started with performance_schema=OFF due to a
dependency on it for the sys schema, which expected to
find Performance Schema tables. The Performance Schema
now creates its tables during startup even if disabled.
(Bug #20956599)
* For CREATE TABLE ... SELECT, it was possible to assign
values to generated columns in the destination table.
(Bug #20949226)
* The server could exit when the Performance Schema read
thread status variables under load. (Bug #20927157, Bug
#20922218, Bug #21103103)
* Previously, SSL files created automatically by the server
were valid for one year. The validity period has been
extended to ten years (the same as SSL files created by
mysql_ssl_rsa_setup). (Bug #20923066)
* CMake support was adjusted for the change of the
-Wno-unused-local-typedefs option to
-Wno-unused-local-typedef in Clang 3.6. (Bug #20921370)
* For debug builds, XA PREPARE raised an assertion if a
transaction contained at least one update and none were
InnoDB updates. (Bug #20920851)
* Using ST_Centroid() with a geometry collection containing
an invalid polygon could cause a server exit. (Bug
#20918881)
* mysql_upgrade failed if the show_compatibility_56 system
variable was enabled. (Bug #20914786)
* Identifiers in normalized statements were sometimes
quoted and sometimes not, an inconsistency that caused
matching failure for statement digests and digest texts.
This caused problems for Performance Schema aggregation
by digest. Identifiers now are quoted consistently. (Bug
#20896539)
* For small values of the read_rnd_buffer_size system
variable, internal caching of temporary results could
fail and cause query execution failure. (Bug #20895852)
* Invalid memory pointer access could occur during access
to the Performance Schema events_statements_history
table, resulting in a server exit. (Bug #20878306)
* For debug builds, passing EXPORT_SET() to
VALIDATE_PASSWORD_STRENGTH() could raise an assertion.
(Bug #20863229)
* A failed FLUSH PRIVILEGES statement followed by
statements to create or drop accounts could cause a
server exit. (Bug #20857652)
* SHOW GLOBAL VARIABLES and selecting from the
INFORMATION_SCHEMA GLOBAL_VARIABLES table resulted in a
spurious warning about the sql_log_bin system variable.
(Bug #20854952)
* Large values of the points_per_circle argument to the
ST_Buffer_Strategy() function could cause large amounts
of memory to be used. To avoid inadvertent excessive
memory use, the maximum value of this argument is now
constrained to be the value of the new
max_points_in_geometry system variable. This variable has
default, minimum, and maximum values of 65,536, 3, and
1,048,576, respectively. (Bug #20842030, Bug #21212788)
* For certain inputs, ST_Buffer() could raise an assertion.
(Bug #20841874)
* An assertion could be raised if the server used a string
column as the key of a temporary table. (Bug #20835095)
References: This bug was introduced by Bug #19695490.
* An assertion could be raised for queries with a GROUP BY
clause and a table for which the optimizer identified
multiple candidate indexes. (Bug #20819199)
* For some startup errors, the server could call exit()
before shutting down plugins and thus failed to invoke
their atexit() handlers. (Bug #20798617)
* SHOW VARIABLES mutexes were being locked twice, resulting
in a server exit. (Bug #20788853)
* ull2dec() was modified to avoid a problem with GCC 5 in
optimized mode. (Bug #20768820)
* Using GCC 5, debug builds failed due to compiler
warnings. (Bug #20768717)
* DDL operations on a server configured with InnoDB as read
only caused a server exit due to invalid memory access
during error reporting. (Bug #20763179)
* ALTER TABLE could fail to prevent subqueries in the
definition of generated columns, resulting in a server
exit. (Bug #20757211)
* Invalid use of the THD structure with generated columns
could cause an assertion to be raised. (Bug #20746926)
* Parser state was initialized incorrectly for parsing
generated column expressions. (Bug #20745142)
* For large values of max_digest_length, the Performance
Schema could encounter an overflow error when computing
memory requirements, resulting in a server exit. (Bug
#20738072)
* A Provides rule in RPM .spec files misspelled
"mysql-embedded" as "mysql-emdedded". (Bug #20734434)
* Columns specified through JOIN ... USING or NATURAL JOIN
that were resolved from a derived table could raise an
assertion. (Bug #20733540)
* Compiling using Clang with AddressSanitizer (ASAN)
enabled caused the gen_lex_hash utility to abort with
memory leak check failures. (Bug #20720615)
* Attempts to establish SSL connections to a Community
Edition server failed if the client had a password and
the server did not have the general query log enabled.
(Bug #20693153)
* Prepared statement execution statistics were not
correctly tracked in the Performance Schema
prepared_statements_instances table. (Bug #20692556)
* MySQL 5.7.6 restricted the list of symbols exported by
the C client library. One of these was
mysql_get_parameters, but that is used by the DBD::mysql
Perl module. mysql_get_parameters is now exported. (Bug
#20686665)
* Cleanup after a MATCH() operation could write to freed
memory. (Bug #20685427)
* Some server warnings referred to the now-deprecated
mysql_install_db command. (Bug #20681412)
* NDB could raise an assertion for failure to get the
tablespace name when attempting to acquire a metadata
lock. (Bug #20676000)
* EXPLAIN for a query containing an uncorrelated subquery
could attempt to materialize the subquery twice, raising
an assertion. (Bug #20665051)
* mysqlslap and mysql_client_test failed to use an SSL
connection by default. (Bug #20654023)
* Debian and Ubuntu package installers neglected to run
mysql_ssl_rsa_setup during installation. (Bug #20650118)
* The mysql_real_escape_string_quote() C API function
failed to escape backtick (`) characters when the
NO_BACKSLASH_ESCAPES SQL mode was disabled. (Bug
#20645725)
* The Spencer regex library used for the REGEXP operator
could be subject to heap overflow in some circumstances.
(Bug #20642505)
* A missing error check after a call to
find_field_in_tables() within the optimizer could cause
an assertion to be raised. (Bug #20615597)
* Optimization of x IN (SELECT y FROM DUAL WHERE ...) was
treated the same as x IN (SELECT y FROM DUAL), losing the
WHERE clause and resulting in a server exit. (Bug
#20615023)
* A buffer-overflow error could occur for mysqlslap during
option parsing. (Bug #20605441)
* The message displayed to indicate that a password was
expired and must be reset referred to the deprecated SET
PASSWORD statement. It now refers to ALTER USER. (Bug
#20602572)
* For debug builds, DROP DATABASE raised an assertion if
there were non-database files in the database directory.
(Bug #20573701)
* For CREATE TABLE ... SELECT, an error occurred if a
selected column was a generated column that depended on a
nonselected column. To handle this, the destination table
does not preserve information about whether selected
columns are generated columns. (Bug #20566243)
* Code for reading and writing the grant tables assumed
that these were MyISAM tables and did not handle errors
that can be thrown if the tables are handled by a
different storage engine. (Bug #20561087)
* A user with an expired password could execute ALTER USER
statements other than to assign a new password. (Bug
#20553132)
* An OpenSSL error queue associated with each thread was
not freed on thread release, resulting in a Valgrind
error. (Bug #20551271)
* The property of whether a view is updatable was
calculated when it was created. If the view referred to
another view that was dropped and recreated and the new
definition of the referenced view had different
updatability than the original definition, that could
affect the updatability of the referring view. Not taking
into account this change in updatability could cause an
assertion to be raised. To avoid this problem, the server
now assesses updatability when reading a view definition
rather than at view creation time. (Bug #20515155)
* Built-in SQL functions could raise an assertion or cause
a server exit if the wrong thread pointer was used to
produce an error or warning message. (Bug #20454979)
* Incorrect calculation of the length of strings written to
the binary log could raise an assertion or cause a server
exit. (Bug #20444737)
References: This bug was introduced by Bug #16066637.
* Nonoptimal cost estimates for key lookups could cause
some queries to be executed with a table scan rather than
key lookups. (Bug #20443863)
* The range optimizer interpreted a hidden key part (InnoDB
primary key) as a minimum bounding rectangle (MBR) index.
Such primary keys cannot be used as MBRs, and a server
exit resulted.. (Bug #20430526)
* The WITH CHECK OPTION of a view was sometimes ignored if
the view was included in another view. For discussion of
the implications of this fix, see The View WITH CHECK
OPTION Clause
(http://dev.mysql.com/doc/refman/5.7/en/view-check-option.html).
(Bug #20407961)
* Calculation of "within" or "contains" relationships
failed for some types of geometry collections. (Bug
#20379981)
* Setting the password for an account not using a built-in
authentication plugin could cause the account to become
unusable.
The fix for this problem involves a change to the
authentication plugin API to add a new
authentication_flags member to the server-side plugin
descriptor. See Writing the Server-Side Authentication
Plugin
(http://dev.mysql.com/doc/refman/5.7/en/writing-authentication-plugins.html#writing-authentication-plugins-server-side)
(Bug #20364862)
* Spatial WKT export functions produced too-long string
representations of coordinate values instead of switching
to exponential notation. (Bug #20363531)
* An off-by-one error in string-copying code could result
in a buffer overflow. (Bug #20359808)
* The Performance Schema events_waits_summary_by_instance
table could fail to return rows for socket instruments.
(Bug #20348824)
* Under certain conditions, the libedit command-line
library could write outside an array boundary and cause a
client program crash. (Bug #20318154)
* Invalid linestring values with a single point and
unclosed polygons with fewer than four points could cause
a server exit. Such invalid values now are rejected. (Bug
#20316779)
* The MeCab full-text parser plugin was omitted from RPM
and Debian packages. (Bug #20315007)
* mysql_config_editor could exit abnormally while
encrypting passwords. (Bug #20294225)
* A deadlock error reported by InnoDB could cause rollback
inside InnoDB while the transaction continued at the SQL
layer. (Bug #20262654)
* Some queries could return different results depending on
whether the semijoin flag of the optimizer_switch system
variable was enabled or disabled. (Bug #20239912)
* MySQL sometimes produced no warning when it was unable to
interpret a character in a given character set. (Bug
#20238729)
* Host value matching for the grant tables could fail to
use the most specific of values that contained wildcard
characters. (Bug #20181776)
* For MySQL distributions linked against yaSSL, a corrupt
client key file could cause clients to exit. (Bug
#20168526)
* Use of SELECT COUNT(DISTINCT) in a subquery in the FROM
clause could produce incorrect results. (Bug #20145024)
References: This bug was introduced by Bug #18766378.
* For join queries with a large number of tables, the
server could exit converting the join to a semi-join.
(Bug #20109861)
* ALTER TABLE operations that changed only an index comment
were not being treated as a fast/in-place alteration.
(Bug #20106553)
* Following execution of a GRANT ... WITH GRANT OPTION
statement, execution of a prepared statement with a view
could cause a server exit. (Bug #20030284)
* ADDTIME() could produce an out-of-range result with a
year >= 10,000. (Bug #19900900)
* Within a stored procedure, access to view columns after
DDL or FLUSH TABLES statements in the procedure could
cause a server exit. (Bug #19897405)
* If the server was started with the
explicit_defaults_for_timestamp system variable enabled,
CREATE TABLE statements that defined a column as
TIMESTAMP NOT NULL failed. (Bug #19881933)
* References to select list columns of the outer query from
the HAVING clause of a correlated subquery in the inner
query should, but did not, return an error, resulting in
a server exit. (Bug #19823076)
* Specifying a bad --init-file option value could cause the
server to hang at startup. (Bug #19822257)
* Several ST_Envelope() problems were corrected:
+ If the mimimum bounding rectangle (MBR) of a
geometry degrades to a Point or horizontal or
vertical LineString, ST_Envelope() returns that
value rather than an invalid polygon.
+ The return value for an empty geometry collection
now is an empty geometry rather than NULL.
+ If a geometry is geometrically invalid but has a
valid WKB string, return a valid MBR rather than
NULL.
(Bug #19811953, Bug #20196720)
* For debug builds, an assertion could be raised if a
top-level query had a HAVING clause that contained a
subquery referencing a column from the top-level query.
(Bug #19811896)
* For debug builds, an assertion could be raised when a
top-level query had a HAVING clause that contained a
subquery referencing a column from the top-level query.
(Bug #19811896)
* GROUP BY or ORDER BY on a CHAR(0) NOT NULL column could
lead to a server exit. (Bug #19660891)
* If a spatial column contained invalid spatial data,
creating a SPATIAL index on the column failed to produce
an error. (Bug #19593342)
* The server could exit if a grouped query had a nongrouped
subquery that contained a reference to an aggregate
function. (Bug #19585938)
* Loading corrupt spatial data into a MyISAM table could
cause the server to exit during index building. (Bug
#19573096)
* Some spatial functions converted -0 to 0. This no longer
occurs. (Bug #19504183)
* For debug builds, certain UPDATE statements could raise
an assertion. (Bug #19055268)
* The LooseScan execution strategy for semi-joins failed to
evaluate the WHERE condition on rows coming from the
first inner table of an outer join. (Bug #18892055)
* An internal procedure that creates temporary tables and
expected a flat list of expressions to map onto table
columns sometimes received a list that was not flat,
causing an assertion to be raised. (Bug #18745214)
* For MyISAM or MEMORY tables, a nested join with a
subquery could product a result set with missing rows
when the optimizer_switch condition_fanout_filter flag
was enabled. (Bug #18717059)
* For some status variables that should monotonically
increase, SHOW GLOBAL STATUS in one session could show
them as decreasing when other concurrent sessions changed
user or disconnected. (Bug #18591145)
* On Windows, setting query_cache_min_res_unit to too large
a value could result in a value of 0 and a subsequent
server exit. (Bug #18487951)
* For debug builds, SET statements that assigned a subquery
value to a variable could raise an assertion due to
improper cleanup related to GROUP BY or ORDER BY clauses.
(Bug #18486509)
* The validate_password plugin was not installed by RPM
packages for platorms using systemd or SysV-style
initialization scripts. (Bug #18438833)
* Some queries involving spatial relation checks would
produce correct results for MyISAM tables but not InnoDB
tables. (Bug #18422162)
* Deleting rows from an empty MyISAM table with a spatial
index resulted in a spurious error message about a
corrupt index. (Bug #18412756)
* Boolean full-text searches for MyISAM tables could fail.
(Bug #18279587)
* A client that attempted to establish SSL connections from
a large number of threads simultaneously could exit with
a segmentation fault. (Bug #18052165)
* For HANDLER read statements that scanned a spatial index,
type conversion errors of values read from the index
could cause a server exit. (Bug #17846865)
* A query with an IN subquery where the left-hand side was
a scalar subquery might cause a server exit. (Bug
#17832047)
* The server could exit under conditions when a query
contained the following construct but produced an empty
result:
literal-valued row constructor <=> (subquery containing UNION)
(Bug #17668844)
* DO statements containing multiple expressions could
result in a memory leak.
A consequence of the bug fix is that DO statement errors
previously converted to warnings now are returned as
errors. (Bug #17479887)
* If ownership of memory allocation was transferred between
threads, Performance Schema memory instrumentation could
report memory use of the threads incorrectly. (Bug
#17473077)
* For debug builds, statements including table-less
subqueries could raise an assertion when executed within
scheduled events. (Bug #17435114)
* The --help message displayed by mysql_secure_installation
did not show options related to option-file processing,
such as --defaults-file. (Bug #17339009)
* Memory usage values in the Performance Schema
memory_summary_global_by_event_name table could be
negative. (Bug #17243619)
* For debug builds, an assertion could be raised in
character-set conversion code due to an overly strict
condition. (Bug #13740934)
* mysql-systemd-start failed if datadir was set in
/etc/my.cnf. (Bug #77357, Bug #21262883)
* The outdated and not-maintained
plugin/daemon_example/ChangeLog file was removed. (Bug
#77188, Bug #21168681)
* Executing a prepared EXPLAIN statement could cause the
server to hang. (Bug #77144, Bug #21139522)
* For mysqldump, the -T option is supposed to be the short
form of the --tab option, but was mistakenly associated
with --debug-info instead. (Bug #77037, Bug #21088793)
References: This bug was introduced by Bug #66854.
* The Common Name value written by mysql_ssl_rsa_setup to
the client-cert.pem client certificate file was
MySQL_Server_suffix_Auto_Generated_Server_Certificate
rather than
MySQL_Server_suffix_Auto_Generated_Client_Certificate.
(Bug #77035, Bug #21087116)
* When the directory specified for the secure_file_priv
system variable did not exist, the server produced a
Failed to normalize the argument error message. It now
produces a message indicating that the directory did not
exist. The same problem occurred for the --datadir option
to mysql_ssl_rsa_setup and was fixed the same way. (Bug
#76918, Bug #21021894)
* For logging to the binary log, the server could rewrite
CREATE USER and ALTER USER statements, adding an ACCOUNT
UNLOCK clause not present in the original statement. This
could unlock locked accounts and cause differences
between master and slave servers. The clause is no longer
written unless present in the original statement. (Bug
#76911, Bug #20996273)
* Compilation could fail in the query rewrite plugin code
for some CMake options. (Bug #76800, Bug #20937654)
* Unaligned memory access could cause spatial operations to
fail. (Bug #76748, Bug #20911624)
* Ubuntu packages were missing dependencies for killall and
psmisc. (Bug #76716, Bug #20893836)
* mysqld --help --verbose was slow if the InnoDB buffer
pool was configured to a large size. Now with those
options, buffer pool allocation is not performed. (Bug
#76625, Bug #20856397)
* CREATE USER events written to the binary log included the
new ACCOUNT syntax even with
log_backward_compatible_user_definitions enabled. (Bug
#76560, Bug #20814051)
* The server rejected empty COM_SHUTDOWN packets. (Bug
#76552, Bug #20810928)
References: This bug was introduced by Bug #14525642.
* In sql/handler.h, HA_ATTACHABLE_TRX_COMPATIABLE and
HA_GENERATED_COLUMNS were defined with the same value.
(Bug #76503, Bug #20783191)
* mysqlimport --use-threads did not actually use multiple
threads. (Bug #76480, Bug #20772273)
* The mutex used for the optimizer cost model cost-constant
cache was not instrumented by the Performance Schema.
This instrument is now available as
wait/synch/mutex/sql/Cost_constant_cache::LOCK_cost_const
. (Bug #76460, Bug #20755430)
* These statement-timeout problems were corrected:
+ An assertion could be raised with max_statement_time
set greater than zero and multiple concurrent
sessions executing certain EXPLAIN statements.
+ The error message indicating that statement
execution was interrupted referred to the
max_statement_time system variable, even if the
relevant timeout was a per-statement value. The
error message is now more generic.
+ It was not possible to set the max_statement_time
system variable at server startup.
+ Setting max_statement_time to set a statement
timeout could cause memory leaks or assertion
failures on Windows.
+ Attempting to kill statements that use attachable
transactions caused subsequent statements to
function improperly, resulting in assertion
failures. A max_statement_time timeout on such
statements could produce a similar outcome.
Note
Subsequent to these changes, the max_statement_time
system variable was renamed to max_execution_time.
(Bug #76446, Bug #20788811, Bug #76915, Bug #21021670,
Bug #76916, Bug #21021754, Bug #20705648, Bug #20705642,
Bug #75782, Bug #20507804)
References: See also Bug #21306646.
* Attempts to create a foreign key matching a FULLTEXT
index failed. For debug builds, attempts to create a
foreign key matching a SPATIAL index raised an assertion.
(Bug #76445, Bug #20752436)
* The ORDER BY clause of a derived table was appended to an
INSERT statement, but ordering for a table being inserted
into is irrelevant and caused a server exit. (Bug #76436,
Bug #20753569)
* A failing ALTER TABLE tablespace operation (DISCARD
TABLESPACE or IMPORT TABLESPACE could produce an
incorrect internal tablespace state, causing a succeeding
statement to fail. (Bug #76424, Bug #20748660)
* Enabling the sql_buffer_result system variable could
cause a server exit for multiple-table UPDATE statements.
(Bug #76419, Bug #20748537)
* The value of secure_file_priv displayed as NULL for both
--secure_file_priv=NULL (correct) and
--secure_file_priv="" (incorrect). (Bug #76401, Bug
#20741572)
* SHOW CREATE TABLE did not correctly display generated
columns that had a character set defined. (Bug #76328,
Bug #20709462)
* The Com_stmt_reprepare status variable was missing from
the Performance Schema global_status and session_status
tables. (Bug #76305, Bug #20697446)
* For multibyte character sets, LOAD DATA could fail to
allocate space correctly and ignore input rows as a
result. (Bug #76237, Bug #20683959)
References: This bug was introduced by Bug #14653594.
* Compilation could fail due to a missing dependency on
lex_token.h for sql_yacc.cc.o. (Bug #76235, Bug
#20678411)
* Global status variables related to SSL certificate
metadata were available only within sessions established
using SSL. (Bug #76157, Bug #20648276)
* ALTER USER statements that named an authentication plugin
did not check whether the plugin is valid. (Bug #76052,
Bug #20602525)
* mysqld --help --verbose tried to perform actions that
have nothing to do with displaying a help message:
Locking files, initializing system files, and checking
for a plugin table. (Bug #75995, Bug #20581228)
* For a SET = (subquery) statement within a stored
procedure, the server could exit if a subquery
transformation was performed. (Bug #75994, Bug #20583321)
* Several spatial function issues were resolved by use of
Boost.Geometry for GIS algorithms:
+ ST_Centroid() with a MultiPolygon argument could
produce incorrect results.
+ Multiple calls to ST_Intersection() could return
inconsistent results for some arguments.
+ ST_Within() and ST_Touches() could return incorrect
results for some arguments.
(Bug #75829, Bug #20508769, Bug #69425, Bug #19270344,
Bug #69538, Bug #19270334)
* Operations on a string exceeding max_allowed_packet bytes
could return NULL and incorrectly replace an existing
value in UPDATE statements with NULL rather than failing.
(Bug #75539, Bug #20376498)
* EXPLAIN for INSERT ... SELECT statements into a
multiple-table view always displayed the first table of
the view as the table being inserted into, even if it was
not. (Bug #75424, Bug #20310257)
* The parser could dereference a null pointer after an
out-of-memory error. (Bug #75372, Bug #20294206)
* With a small thread stack, queries with many expressions
could produce a thread stack overrun error. (Bug #74985,
Bug #20087571)
* On platforms where the char is unsigned, the server was
unable to parse collation definitions that included
non-7-bit ASCII characters. Affected platforms include
ARM and PowerPC. Thanks to Alexey Kopytov for the patch.
(Bug #74891, Bug #20928289)
* In the Performance Schema threads table, the
PROCESSLIST_STATE and PROCESSLIST_INFO values did not
change for the thread/sql/main main thread instrument as
the thread state changed. (Bug #74517, Bug #19887143)
* On OS X 10.10 (Yosemite), mysqld failed to start
automatically. The startup item has been replaced with a
launchd job, which enables the preference pane checkbox
for automatic startup to work again. (Bug #74434, Bug
#19858350)
* mysql_install_db did not write a date to the
.mysql_secret file. (Bug #74006, Bug #19659004)
* Incorrect results could be produced tor views and derived
tables on the inner side of an outer join and from which
non-nullable expressions such as literals were selected.
(Bug #73953, Bug #20841369, Bug #67014, Bug #15967464,
Bug #65936, Bug #14358878, Bug #67300, Bug #15936817, Bug
#20708288)
* Certain queries for the INFORMATION_SCHEMA TABLES and
COLUMNS tables could lead to excessive memory use when
there were large numbers of empty InnoDB tables. (Bug
#72322, Bug #18592390)
* Large integer literals converted to floats for comparison
with decimal data could lose precision and produce
incorrect results. (Bug #72056, Bug #18411494, Bug
#21139707)
* When choosing join order, the optimizer could incorrectly
calculate the cost of a table scan and choose a table
scan over a more efficient eq_ref join. (Bug #71584, Bug
#18194196)
* The server interpreted --tc-heuristic-recover option
values incorrectly due to an off-by-one error. Thanks to
Laurynas Biveinis for the patch. (Bug #70860, Bug
#19771769)
* On OS X, the vio_io_wait() call could cause stack
corruption for a large number of file descriptors (more
than FD_SETSIZE). (Bug #69903, Bug #17259750)
* Queries that included a HAVING clause based on
nondeterministic functions could produce incorrect
results. (Bug #69638, Bug #17055185)
* MySQL failed to compile using OpenSSL 0.9.8e. (Bug
#68999, Bug #16861371)
* For mysqlslap, the combination of
--auto-generate-sql-secondary-indexes and
--auto-generate-sql failed because it tried to insert
36-digit UUID values into a VARCHAR(32) column. Thanks to
Tsubasa Tanaka for the patch. (Bug #55265, Bug #11762644)
--
MySQL Announce Mailing List
For list archives: http://lists.mysql.com/announce
To unsubscribe: http://lists.mysql.com/announce