MySQL 8.0 Release Notes
In some cases, calling
audit_log_read
(
audit_log_read_bookmark
()
)
led to an Out of memory
error.
(Bug #35957453)
Microsoft Windows: MySQL did not compile correctly using Visual Studio 2022. (Bug #35967676)
Improved the -DWITH_ZLIB=system
check.
(Bug #35968195)
For compiling on Linux, changed the
no-error=deprecated-declarations
flag to
no-deprecated-declarations
for the OpenSSL 3
library.
Our thanks to karry zhang for the contribution. (Bug #112209, Bug #35755328)
The hashing algorithm employed yielded poor performance when
using a HASH
field to check for uniqueness.
(Bug #109548, Bug #34959356)
Important Change:
The GnuPG build key (A8D3785C
) used to sign
MySQL downloadable packages has been updated. The previous GnuPG
build key (3A79BD29
) expired on 2023-12-14.
For information about verifying the integrity and authenticity
of MySQL downloadable packages using GnuPG signature checking,
or to obtain a copy of our public GnuPG build key, see
Signature Checking Using GnuPG.
Due to the GnuPG key update, systems configured to use
repo.mysql.com
may report a signature
verification error when upgrading to MySQL 8.0.36 and higher or
to MySQL 8.3.0 and higher using apt
or
yum
. Use one of the following methods to
resolve this issue:
Manually reinstall the MySQL APT or YUM repository setup package from https://dev.mysql.com/downloads/.
Download the MySQL GnuPG public key and add it your system GPG keyring.
When executing a stored program, the Performance Schema instrumentation caused some unnecessary overhead.
As of this release, all stored procedure micro instructions
(statement/sp/%
), except
statement/sp/stmt
, are disabled by default.
(Bug #27934653)
The performance of the Performance Schema statement
instrumentation has been improved. Specifically, collecting
MESSAGE_TEXT
data is now more efficient.
(Bug #112621, Bug #35916912)
Beginning with this release, the behavior of the
AUTHENTICATION_PAM_LOG
environment variable
used in debugging the PAM authentication plugin is changed as
follows:
Setting AUTHENTICATION_PAM_LOG
to an
arbitrary value (except as noted in the next item) no longer
includes passwords in its diagnostic messages.
To include passwords in the diagnostic messages, set
AUTHENTICATION_PAM_LOG=PAM_LOG_WITH_SECRET_INFO
.
For more information, see PAM Authentication Debugging. (Bug #74313, Bug #20042010)
Important Change: For platforms on which OpenSSL libraries are bundled, the linked OpenSSL library for MySQL Server has been updated to version 3.0.12. Issues fixed in OpenSSL version 3.0.12 are described at https://openssl-library.org/news/openssl-3.0-notes/. (Bug #36033684)
Performance; InnoDB:
The hashing function used by the InnoDB
adaptive hash index became more expensive as an unintended
result of refactoring done in MySQL 8.0.30.
(Bug #111538, Bug #35531293)
References: This issue is a regression of: Bug #81814, Bug #16739204, Bug #23584861.
InnoDB: The hash function used by the adaptive hash index (AHI) was improved to increase performance. (Bug #35449386)
InnoDB:
If change buffer entries are present during startup, a disabled
innodb_validate_tablespace_paths
option will no longer be enforced and instead the MySQL server
will proceed to validate all tablespaces. Otherwise, secondary
indexes could end up corrupted.
(Bug #35208990)
InnoDB: During concurrent DDL and DML operations, DDL could fail if the online log grew too large. Buffer handling was improved to prevent this issue. (Bug #35115601)
Replication:
An issue with calculating the current number of bytes used for
Log_event
events in Performance Schema memory
instrumentation made it appear as though the
sql/replica_sql
thread on the replica grew
endlessly and never decreased in size.
(Bug #35546877)
Replication:
Stopping replication while replicating CREATE TABLE AS
SELECT
caused the server to exit.
(Bug #33934013)
Group Replication:
A forced START GROUP_REPLICATION
while a replication channel was in an error state could lead to
an unplanned server exit.
(Bug #34724344)
For building Enterprise Linux 8 RPMs, the build scripts now
point to a newer strip command (under
/opt/rh/gcc-toolset-12
), and they now check
that the corresponding dwz tool is available.
(Bug #36086236)
In some cases, calling a loadable function installed by an improperly initialized plugin caused an unplanned shutdown. (Bug #35889261)
Found and fixed an assertion failure at
handler::ha_index_end()
in
handler.cc
.
(Bug #35877600)
When the MYSQL_FIREWALL
plugin failed to
initialize properly during server startup, this led to errors in
the server log and sometimes unplanned termination of
mysqld.
(Bug #35853298)
Some nested queries with GROUP BY
were not
handled correctly.
(Bug #35846402, Bug #35945822)
References: This issue is a regression of: Bug #32918400.
In limited cases, passing data to the
MD5()
encryption function could
halt the server.
(Bug #35764496)
Some subselects from views were not always handled correctly. (Bug #35738548)
While performing an operation such as the bulk renaming of many
tables, simultaneously executing a data definition statement
similar to
CREATE
TABLE ... SELECT
could stop the server unexpectedly.
(Bug #35735937)
UPDATE
HISTOGRAM
did not behave as expected in all cases.
UPDATE HISTOGRAM did not behave as expected in all cases. (Bug #35710404)
EXPLAIN ANALYZE
did not always
produce the expected result.
(Bug #35710383)
An error occurred during subquery resolution. (Bug #35710373)
References: This issue is a regression of: Bug #35184353.
Refreshing of used table information is now postponed to the start of the next execution, just after tables have been opened, when we know that all table objects are in a proper state. (Bug #35710213, Bug #36030073)
Some HAVING
queries did not produce expected
results.
(Bug #35710183)
Some recursive CTEs did not function as expected. (Bug #35654240)
Some queries using OVER (PARTITION ...)
were
not always executed successfully.
(Bug #35627798)
Some subqueries with ROLLUP
were not always
handled correctly.
(Bug #35621842, Bug #35804794)
Removed the
CPACK_COMPONENT_GROUP_INFO_DISPLAY_NAME
configuration option from the Windows installation MSI
interface. Now the INFO_BIN
and
INFO_SRC
files are always installed.
(Bug #35529968)
Some queries using windowing functions were not always handled correctly. (Bug #35471471)
In debug builds, a case-altered column name could cause the server to exit. (Bug #35449266)
MySQL Server installation packages contained two copies of the
INFO_SRC
file.
(Bug #35400142)
A SELECT
statement within a
prepared statement unexpectedly returned different results on
successive executions.
(Bug #35340987, Bug #35846585, Bug #35846873)
References: This issue is a regression of: Bug #35060385.
Some SELECT DISTINCT
queries were not always
handled correctly.
(Bug #33725447)
Removed an assertion failure in
sql/field.cc
.
(Bug #112503, Bug #35846221)
Sme queries having the form SELECT AVG(...) OVER
(PARTITION BY ...)
were not always handled correctly.
(Bug #112460, Bug #35710179, Bug #35845413)
Upgrading MySQL using an official MySQL Yum or SUSE repository always enables the MySQL service. Now it enables the service only after installing, and preserves (and does not edit) the existing value while upgrading. (Bug #112382, Bug #35823558)
For a query with a derived condition pushdown where a column in
the condition needs to be replaced, a matching item could not
found, even when known to be present, when the replacement item
was wrapped in a ROLLUP
while the matching
item was not.
(Bug #111665, Bug #35498378, Bug #35570065, Bug #35826171)
References: This issue is a regression of: Bug #33349994.
Ordering a nested block where the ORDER BY
contained a window function raised an assert in
sql/sql_executor.cc
.
(Bug #111306, Bug #34856256, Bug #35471522)
Performing an arithmetic operation on the result over a window function in a stored procedure gave the correct result the first time the procedure was executed, but returned an incorrect result on all subsequent invocations. (Bug #110983, Bug #35380604)
References: See also: Bug #110847, Bug #35340987.
MySQL did not build correctly using the musl
version of libc
.
Our thanks to Sam James for the contribution. (Bug #110808, Bug #35330950)
In some cases, selecting from a view leaked a small amount of memory. (Bug #103133, Bug #32764586)