Percona Server for MySQL 5.6.40-84.0¶
Based on MySQL 5.6.40, including all the bug fixes in it, Percona Server for MySQL 5.6.40-84.0 is the current GA release in the Percona Server for MySQL 5.6 series. All of Percona‘s software is open-source and free.
- A new string variable
version_suffixallows to change suffix for the Percona Server for MySQL version string returned by the read-only
versionvariable. This allows to append the version number for the server with a custom suffix to reflect some build or configuration specifics. Also
version_comment(default value of which is taken from the CMake
COMPILATION_COMMENToption) is converted from a global read-only to a global read-write variable and thereby it is now cutomizable.
- Query response time plugin now can be disabled at session level with use
of a new variable
- Compilation warning was fixed for
-DWITH_QUERY_RESPONSE_TIME=ONCMake compilation option, which makes QRT to be linked statically. Bug fixed #3841.
- A code clean-up was done to fix clang 6 specific compilation warnings and errors (bug fixed #3893, upstream #90111).
-DWITHOUT_<PLUGIN>=ONCMake variable to exclude a plugin from the build didn’t work for some plugins, including a number of storage engines. Bug fixed #3901.
- A clean-up in Percona Server for MySQL binlog-related code was made to avoid uninitialized memory comparison. Bug fixed #3925 (upstream #90238).
- Temporary file I/O was not instrumented for Performance Schema. Bug fixed #3937 (upstream #90264).
key_block_sizevalue was set automatically by the Improved MEMORY Storage Engine, which resulted in warnings when changing the engine type to InnoDB, and constantly growing
key_block_sizeduring alter operations. Bugs fixed #3936, #3940, and #3943.
- Percona Server for MySQL Debian packages description included reference to
/etc/mysql/my.cnffile, which is not actually present in these packages. Bug fixed #2046.
- Fixes were introduced to remove GCC 8 compilation warnings for the Percona Server for MySQL build, retaining compatibility with old compiler versions, including GCC 4.4. Bugs fixed #3950 and #4471.
- A typo in
plugin.cmakefile prevented to compile plugins statically into the server. Bug fixed #3871 (upstream #89766).
-DWITH_NUMA=ONbuild option was silently ignored by CMake when NUMA development package was not installed, instead of exiting by error. Bug fixed #4487.
numa_interleavemapped to the upstream innodb_numa_interleave variable in
5.6.27-75.0were reverted to their original implementation due to upstream variant being less effective in memory allocation. Now buffer pool is allocated with MAP_POPULATE, forcing NUMA interleaved allocation at the buffer pool initialization time. Bug fixed #3967.
audit_log_include_accountsvariable did not take effect if placed in
my.cnfconfiguration file, while still working as intended if set dynamically. Bug fixed #3867.
- Synchronization between between
kill_idle_transactionsystem variables was broken because of the regression in Percona Server for MySQL
5.6.40-83.2. Bug fixed #3955.
- Executing the
SHOW GLOBAL STATUSexpression could cause “data drift” on global status variables in case of a query rollback: the variable, being by its nature a counter and allowing only an increase, could return to its previous value. Bug fixed #3951 (upstream #90351).
ALTER TABLE ... COMMENT = ...statement caused TokuDB to rebuild the whole table, which is not needed, as only FRM metadata should be changed. The fix was provided as a contribution by Fungo Wang. Bugs fixed #4280 and #4292.
- A number of Percona Server for MySQL 8.0 TokuDB fixes have been backported to Percona Server for MySQL 5.6 in preparation for using MySQL 8.0. Bugs fixed #4379, #4380, #4387, #4378, #4383, #4384, #4386, #4382, #4391, #4390, #4392, and #4381.
TokuDB Changes and Fixes¶
- Two new variables,
tokudb_enable_fast_upsert, were introduced to facilitate the TokuDB fast updates feature, which involves queries optimization to avoid random reads during their execution. Bug fixed #4365.
- A data race was fixed in minicron utility of the PerconaFT, as a contribution by Rik Prohaska. Bug fixed #4281.
Other Bugs Fixed¶
- #3818 “Orphaned file mysql-test/suite/innodb/r/percona_innodb_kill_idle_trx.result”
- #3926 “Potentially truncated bitmap file name in log_online_open_bitmap_file_read_only() (storage/innobase/log/log0online.cc)”
- #2204 “Test main.audit_log_default_db is unstable”
- #3767 “Fix compilation warnings/errors with clang”
- #3773 “Incorrect key file for table frequently for tokudb”
- #3794 “MTR test main.percona_show_temp_tables_stress does not wait for events to start”
- #3798 “MTR test innodb.percona_extended_innodb_status fails if InnoDB status contains unquoted special characters”
- #3887 “TokuDB does not compile with -DWITH_PERFSCHEMA_STORAGE_ENGINE=OFF”
- #4388 “5.7 code still has TOKU_INCLUDE_OPTION_STRUCTS which is a MariaDB specific construct”
- #4265 “TDB-114 (Change use of MySQL HASH to unordered_map) introduces memory leak”
- #4277 “memory leaks in TDB-2 and TDB-89 tests”
- #4276 “Data race on cache table attributes detected by the thread sanitizer”
- #4451 “Implement better compression algo testing”
- #4469 “variable use out of scope bug in get_last_key test detected by ASAN in clang 6”
- #4470 “the cachetable-simple-pin-nonblocking-cheap test occasionally fails due to a locking conflict with the cachetable evictor”
- #1131 “User_var_log_event::User_var_log_event(const char*, uint, const Format_description_log_event*): Assertion `(bytes_read == (data_written - ((old_pre_checksum_fd || (description_event->checksum_alg == BINLOG_CHECKSUM_ALG_OFF)) ? 0 : 4))) || ((”.