Path to this page:
Subject: CVS commit: pkgsrc/databases
From: Adam Ciarcinski
Date: 2019-10-14 22:19:29
Message id: 20191014201929.E3C29FBF4@cvs.NetBSD.org
Log Message:
mysql57: updated to 5.7.28
Changes in MySQL 5.7.28
Configuration Notes
It is now possible to compile MySQL 5.7 using OpenSSL 1.1.1, enabling \
compilation support for MySQL 5.7 against OpenSSL even when OpenSSL 1.0.2 \
reaches End of Life status at the end of 2019.
All MySQL 5.7 builds now use OpenSSL. MySQL no longer supports using yaSSL as \
the SSL library, and source distributions no longer include yaSSL.
The WITH_SSL CMake option no longer permits bundled (use yaSSL) as a valid \
value, and the default option value has changed from bundled to system (use the \
version of OpenSSL installed on the host system).
sys Schema Notes
The sys.schema_unused_indexes view now filters out unique indexes.
The sys.ps_is_consumer_enabled() function now produces an error rather than \
returning NULL if the argument is an unknown non-NULL consumer name.
Previously, sys schema sources were maintained in a separate Git repository. sys \
schema sources now are included with and maintained within MySQL source \
distributions (under scripts/sys_schema).
The sys.version view is deprecated and will be removed in a future MySQL \
version. Affected applications should be adjusted to use an alternative instead. \
For example, use the VERSION() function to retrieve the MySQL server version.
Bugs Fixed
InnoDB: An ALTER TABLE ... ENCRYPTION = 'Y' operation on a MyISAM table failed \
to raise an error indicating that the storage engine does not support \
encryption. The INPLACE algorithm did not check encryption support before \
updating metadata in the .frm file. To address this issue, an encryption support \
flag was added. The ALTER TABLE ... ENCRYPTION = 'Y' operation now checks the \
flag and reports an error if the storage engine does not support encryption.
InnoDB: Delete marked rows were able to acquire an external read lock before a \
partial rollback was completed. The external read lock prevented conversion of \
an implicit lock to an explicit lock during the partial rollback, causing an \
assertion failure.
InnoDB: A long running ALTER TABLE ... ADD INDEX operation with concurrent \
inserts caused semaphore waits.
Replication: A deadlock involving three threads could occur if a START SLAVE \
statement was issued to start the SQL thread on a slave while the SQL thread was \
still in the process of being stopped, and a request for the slave status was \
made at the same time. The issue has now been fixed by releasing a lock earlier \
while the SQL thread is being stopped.
Replication: A locking issue in the WAIT_FOR_EXECUTED_GTID_SET() function could \
cause the server to hang in certain circumstances. The issue has now been \
corrected.
Replication: On a multi-threaded slave with GTIDs in use and \
MASTER_AUTO_POSITION set to ON, following an unexpected halt the slave would \
attempt relay log recovery, which failed if relay logs had been lost, preventing \
replication from starting. However, this step was unnecessary as GTID \
auto-positioning can be used to restore any missing transactions. In a recovery \
situation, the slave now checks first whether MASTER_AUTO_POSITION is set to ON, \
and if it is, skips relay log recovery.
When generating C source from SQL scripts, Some utf8-encoded characters were \
split across lines. Thanks to Przemysław Skibiński for the patch.
For Solaris, mysqld.cc contained a prototype for memcntl() that is no longer \
needed. The prototype has been removed.
For Solaris, -DWITH_SSL=system did not work when compiling with GCC.
MySQL builds configured with -DWITHOUT_SERVER=1 failed.
For the keyring_aws plugin, some valid region values for the keyring_aws_region \
system variable were rejected.
For debug builds, an assertion could be raised during UNION queries when \
computing the combined data type of a GEOMETRY column and SELECT * FROM (SELECT \
NULL).
For authentication using an LDAP authentication plugin, if the user DN portion \
was empty and group mapping was configured, authentication assigned an incorrect \
user DN and skipped the user search.
mysqlpump produced an error when run against a server older than MySQL 5.7.
A possible integer overflow due to unsigned integer type casting could lead to \
later buffer overflow due to arbitrary size memory allocation.
Attempted use of a freed object during MeCab plugin initialization caused a \
segmentation fault.
For MySQL installed using RPM packages, an initialization script that tested \
server connectivity misbehaved if the client account authenticated using an LDAP \
authentication plugin.
Improper locking during storage engine initialization could cause a server exit.
On a GTID-enabled server, concurrent execution of DROP USER and a prepared \
statement that accessed a view could deadlock.
A query with a WHERE clause whose predicate contained a numeric value in \
scientific notation was not handled correctly.
VS2019 produced compilation errors with debug compilation selected due to use of \
the /ZI flag. Now /Z7 is used instead.
The client library could dereference a null pointer while fetching result set \
metadata from the server.
In READ UNCOMMITTED isolation level, a segmentation fault occurred under heavy \
load from memcached clients. An externally stored BLOB column that was being \
updated by one transaction was read by another transaction as having a NULL \
value and a non-zero data length.
Arguments for the TIMESTAMPADD() function could be reversed for prepared statements.
With the thread_pool plugin enabled, the sys.processlist and sys.session views \
displayed a thread name rather than the actual user name.
The delete_latency column in the sys.schema_index_statistics view incorrectly \
referred to the SUM_TIMER_INSERT column of the Performance Schema \
table_io_waits_summary_by_index_usage table rather than the SUM_TIMER_DELETE \
column.
In output from the sys.diagnostics() procedure, the latency column for the \
user_summary_by_file_io_type view was incorrectly displayed in raw picoseconds \
rather than as a formatted value.
MySQL Enterprise Encryption functions could apply Diffie-Hellman (DH) methods to \
non-DH keys, resulting in unpredictable results or server exit.
Password masking was incomplete for SHOW PROCESSLIST and some INFORMATION_SCHEMA \
and Performance Schema tables.
The -DWITH_EXAMPLE_STORAGE_ENGINE=1 CMake option was ignored but should not have \
been. If -DWITH_EXAMPLE_STORAGE_ENGINE=0 is given, the EXAMPLE storage engine is \
built as a plugin.
Files: