MySQL Server 8.0.18: Thanks for the Contributions
In my blog series about external contributions to MySQL 8 we have reached version 8.0.18 which was released Monday 14 October 2019. Again the community has contributed to make MySQL better. Thank you.

The contributions to MySQL 8.0.18 includes several patches from Facebook as well as patches from Gillian Gunson, Przemysław Skibiński (Percona), Daniel Black, and Satya Bodapati (also Percona). The contributions are:
- MySQL now provides more control over the use of compression to minimize the number of bytes sent over connections to the server. Previously, a given connection was either uncompressed or used the
zlib
compression algorithm. Now, it is also possible to use thezstd
algorithm (zstd 1.3), and to select a compression level forzstd
connections. The permitted compression algorithms can be configured on the server side, as well as on the connection-origination side for connections by client programs and by servers participating in master/slave replication or Group Replication. For more information, see Connection Compression Control.
Connection compression using thezstd
algorithm requires that the server be built withzstd
library support. The newWITH_ZSTD
CMake option indicates whether to use the bundled or systemzstd
library.
Legacy compression-control parameters, such as the--compress
client option, are deprecated and will be removed in a future MySQL version.
Thanks to Facebook for a contribution on which some of this work was based. - The
sys.schema_unused_indexes
view now filters out unique indexes. Thanks to Gillian Gunson for the contribution. (Bug #24798995, Bug #83257) - The new
innodb_idle_flush_pct
variable permits placing a limit on page flushing during idle periods, which can help extend the life of solid state storage devices. See Limiting Buffer Flushing During Idle Periods.
Thanks to Facebook for the contribution. (Bug #27147088, Bug #88566) - Replication: The heartbeat interval for a replication slave, which is controlled by the
MASTER_HEARTBEAT_PERIOD
option of theCHANGE MASTER
TO statement, can be specified with a resolution in milliseconds. Previously, the master's binary log dump thread used a granularity of seconds to calculate whether a heartbeat signal should be sent to the slave, causing excessive heartbeat activity in the case of multiple skipped events. To remove this issue, all heartbeat-related calculations by the master and slave are now carried out using a granularity of nanoseconds for precision. Thanks to Facebook for the contribution. (Bug #29363787, Bug #94356) - When generating C source from SQL scripts, Some utf8-encoded characters were split across lines. Thanks to Przemysław Skibiński from Percona for the patch. (Bug #30152555, Bug #96449)
- With strict SQL mode enabled, the
STR_TO_DATE()
function did not properly handle values with time parts only. Thanks to Daniel Black for the contribution. (Bug #18090591, Bug #71386) - InnoDB: A long running ALTER TABLE … ADD INDEX operation with concurrent inserts caused semaphore waits. Thanks to Satya Bodapati from Percona for the patch. (Bug #29008298)
If you have patches you would like to contribute you can do so from MySQL's GitHub repository (requires signing the Oracle Contributor Agreement).
Thank you for the contributions.
Leave a Reply