Bugfix:
- InnoDB: A tablespace import operation that failed due to the source and destination tables being defined with different DATA DIRECTORY clauses reported an insufficiently descriptive schema mismatch error. Moreover, if a .cfg file was not present, the same operation would raise an assertion failure. A more informative error message is now reported in both cases before the import operation is terminated due to the data directory mismatch.
- InnoDB: Updating certain InnoDB system variables that take string values raised invalid read errors during Valgrind testing.
- Replication: In the event of an unplanned disconnection of a replication slave from the master, the reference to the master's dump thread might not be removed from the list of registered slaves, in which case statements that accessed the list of slaves would fail. The issue has now been fixed
- Replication: With the settings binlog_format=MIXED, tx_isolation=READ-COMMITTED, and binlog_row_image=FULL, an INSERT ... SELECT query involving a transactional storage engine omitted any columns with a null value from the row image written to the binary log. This happened because when processing INSERT ... SELECT statements, the columns were marked for inserts before the binary logging format was selected. The issue has now been fixed.
More Infos: https://dev.mysql.com/doc/relnotes/mysql/5.6/en/news-5-6-48.html
MFH: 2020Q2
Security: 21d59ea3-8559-11ea-a5e2-d4c9ef517024 (MySQL - Server)
Security: 622b5c47-855b-11ea-a5e2-d4c9ef517024 (MySQL - Client)
Sponsored by: Netzkommune GmbH
This port doesn't build on powerpc64 with clang:
Wrong types for attribute: inalloca nest noalias nocapture nonnull readnone readonly signext sret zeroext byval dereferenceable(1) dereferenceable_or_null(1)
%call38 = call signext i32 @my_atomic_cas32(i32* %58, i32* %60, %union.U_32 signext %61)
in function lf_hash_insert
fatal error: error in backend: Broken function found, compilation aborted!
cc: error: clang frontend command failed with exit code 70 (use -v to see invocation)
FreeBSD clang version 10.0.0 (git@github.com:llvm/llvm-project.git llvmorg-10.0.0-rc3-1-gc290cb61fdc)
Target: powerpc64-unknown-freebsd13.0
Thread model: posix
InstalledDir: /usr/bin
This issue is already reported upstream, so switch for now to GCC on powerpc64.
/var/ports/usr/ports/databases/mysql56-client/work/mysql-5.6.47/vio/viosslfactories.c:230:25: error: use of undeclared identifier 'SSL_OP_NO_TLSv1_3'
SSL_OP_NO_TLSv1_3 |
^
/var/ports/usr/ports/databases/mysql56-client/work/mysql-5.6.47/vio/viosslfactories.c:275:12: warning: implicit declaration of function 'SSL_CTX_set_ciphersuites' is invalid in C99 [-Wimplicit-function-declaration]
if (0 == SSL_CTX_set_ciphersuites(ssl_fd->ssl_context, ""))
Special thanks for his help to: fluffy
PR: 244320
MFH: 2020Q1
Sponsored by: Netzkommune GmbH
Bugs Fixed:
- Replication: When GTIDs are enabled on a replication master and slave, and the slave connects to the master with the MASTER_AUTO_POSITION=1 option set, the master must send the slave all the transactions that the slave has not already received, committed, or both. If any of the transactions that should be sent by the master have been already purged from the master's binary log, the master sends the error ER_MASTER_HAS_PURGED_REQUIRED_GTIDS (1789) to the slave, and replication does not start.
The message provided for the error ER_MASTER_HAS_PURGED_REQUIRED_GTIDS has been changed to provide advice on the correct action in this situation, which is for the slave to replicate the missing transactions from another source, or for the slave to be replaced by a new slave created from a more recent backup. The message advises that the master's binary log expiration period can be revised to avoid the situation in future. In addition, the master now identifies the GTIDs of the purged transactions and supplies them in its error log in the warning message ER_FOUND_MISSING_GTIDS (11809), so that you do not need to calculate the missing GTIDs manually.
- With multiple sessions executing concurrent INSERT ... ON DUPLICATE KEY UPDATE statements into a table with an AUTO_INCREMENT column but not specifying the AUTO_INCREMENT value, inserts could fail with a unique index violation.
- A SELECT using a WHERE condition of the form A AND (B OR C [OR ...]) resulting in an impossible range led to an unplanned exit of the server.
- An incomplete connection packet could cause clients not to properly initialize the authentication plugin name.
Approved by: mmokhi (maintainer, implicit)
MFH: 2020Q1
Security: a6cf65ad-37d2-11ea-a1c7-b499baebfeaf
Sponsored by: Netzkommune GmbH
Bugfix:
- Improper locking during storage engine initialization could cause a server exit.
- 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.
- For MySQL Community Edition, the cipher order specified by the client was used in preference to the order on the server side, unless the server was confi
- 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 e
More Info: https://dev.mysql.com/doc/relnotes/mysql/5.6/en/news-5-6-46.html
Approved by: mmokhi (maintainer, implicit)
MFH: 2020Q1
Security: fc91f2ef-fd7b-11e9-a1c7-b499baebfeaf
Sponsored by: Netzkommune GmbH
as defined in Mk/bsd.default-versions.mk which has moved from GCC 8.3
to GCC 9.1 under most circumstances now after revision 507371.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, everything INDEX-11 shows with a dependency on lang/gcc9 now.
PR: 238330
This update includes
Bugfix:
- InnoDB: The INDEX_LENGTH value in INFORMATION_SCHEMA.TABLES
was not updated when adding an index
- MySQL 5.6 did not build with maintainer mode enabled with GCC 7
- A damaged mysql.user table could cause a server exit
- mysqladmin shutdown did not wait for mysqld to shut down
More info: https://dev.mysql.com/doc/relnotes/mysql/5.6/en/news-5-6-44.html
Security Fix:
CVE-2019-1559, CVE-2018-3123 and other fixes.
More info: https://www.oracle.com/technetwork/security-advisory/cpuapr2019-5072813.html#AppendixMSQL<Paste>
PR: 237399
Reported by: Brent Busby <brent@jfi.uchicago.edu>
Sponsored by: The FreeBSD Foundation
This update (released on Jan 21st) includes:
Bugfix:
-Correct the handling of quotes for identifiers in
ROLLBACK TO SAVEPOINT statements.
-Don't permit creation of dbs with same name as redo log file
(Bug #28867993).
-Use strncmp() instead of memcmp() for comparing logfile names
(prevent the uninitialized memory as result).
More info from upstream:
https://dev.mysql.com/doc/relnotes/mysql/5.6/en/news-5-6-43.html
Sponsored by: The FreeBSD Foundation
Ports that build out of source now simply can use "USES=cmake"
instead of "USES=cmake:outsource". Ports that fail to build
out of source now need to specify "USES=cmake:insource".
I tried to only set insource where explictely needed.
PR: 232038
Exp-run by: antoine
defined via Mk/bsd.default-versions.mk which has moved from GCC 7.4 t
GCC 8.2 under most circumstances.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, as a double check, everything INDEX-11 showed depending on lang/gcc7.
PR: 231590
After `usr/info` moved to `usr/share/info` and now that texinfo is not
in base on any of the supported version of FreeBSD, This makes the port consistent.
Reported by: ohauer
Sponsored by: The FreeBSD Foundation
in the ports tree (via Mk/bsd.default-versions.mk and lang/gcc) which
has now moved from GCC 6 to GCC 7 by default.
This includes ports
- featuring USE_GCC=yes or USE_GCC=any,
- featuring USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and those
- with USES=compiler specifying one of openmp, nestedfct, c11, c++0x,
c++11-lib, c++11-lang, c++14-lang, c++17-lang, or gcc-c++11-lib.
PR: 222542
The commit adding the ${name}_limits to 11 is reverted in r332363
Change the Makefile conditions/vars so that
new ${name}_limits mechanism is only present on 12-CURRENT (>=1200057)
PR: 227435
Reported by: 0mp
Regarding to the changes to rc.subr(8) it is no longer necessary to
define a resource limiting logic in service scripts.
limits(1) is now run by default and its configuration is handled
via the "${name}_limits" variable.
This however causes collision of variable names and also is not
compatible with the old mechanism.
This fixes the rc-script of mysql56 for the bases with both
old and new mechanism.
PR: 227229
Submitted by: 0mp
Reported by: 0mp
Sponsored by: Netzkommune GmbH
After r328331 changes in head/etc/rc.subr, having "NO" in mysql_limits
goes into "limits" command params as is.
So this patch substitutes the "NO" appropriately when needed.
PR: 225657
Reported by: robbak@gmail.com
Reviewed by: Rainer Hurling <rhurlin@gwdg.de>
Sponsored by: Netzkommune GmbH
Part of the pkg-message points about .mysql_secret file which
isn't case about new mysql56 release anymore.
Delete no-more-valid part.
(The case still is a thing for 57 and 80)
PR: 225696
Reported by: knezour@weboutsourcing.cz
Sponsored by: Netzkommune GmbH
sql-common/client_authentication.cc:87:56: error: comparison between pointer and integer ('char *' and 'int')
mysql->options.extension->server_public_key_path != '\0')
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~
sql/sql_trigger.cc:195:5: error:
non-constant-expression cannot be narrowed from type 'int' to 'size_t' (aka 'unsigned long') in
initializer list [-Wc++11-narrowing]
static_cast<int>(my_offsetof(class Table_triggers_list, definitions_list)),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Reported by: antoine (via bug 224669)
(via Mk/bsd.default-versions.mk and lang/gcc) which has moved from
GCC 5.4 to GCC 6.4 under most circumstances.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c++11-lib, c++11-lang,
c++14-lang, c++0x, c11, or gcc-c++11-lib.
PR: 219275
databases/mysqlwsrep56-server has been present for some time and
databases/mysqlwsrep57-server has been added recently. Both ports
conflict with other MySQL server ports and this has been reflected
in databases/mysqlwsrep5[67]-server/Makefile but must also be
reflected in all conflicting ports' Makefiles as well.
The conflicting ports are:
databases/mariadb100-server
databases/mariadb101-server
databases/mariadb102-server
databases/mariadb55-server
databases/mysql55-server
databases/mysql56-server
databases/mysql57-server
databases/mysql80-server
databases/percona55-server
databases/percona56-server
databases/percona57-server
There is not going to be mysqlwsrep*-client* ports (because the vanilla
mysql*-client* ports suffice), so the entry in CONFLICTS just reads
mysqlwsrep*.
PR: 220791
Submitted by: vd
Approved by: brnrd, ale (maintainer timeout), feld (maintainer timeout), flo, mmokhi, koobs
This release contains
features:
* The mysql client now supports a --binary-as-hex option for
binary data (Bug #25340722, Bug #84391)
* mysqlaccess now looks for its configuration file only in the
SYSCONFDIR directory and /etc. (Bug #25043674)
And bugfixes:
* mysqld: failed to start the server if the --datadir option was specified
with a relative path name. (Bug #25364806)
* InnoDB: The server allocated memory unnecessarily for an operation that
rebuilt the table. (Bug #25573565, Bug #85043)
* mysqldump: could write database names in USE statements
incorrectly. (Bug #25998635)
Reviewed by: mat (mentor)
Approved by: mat (mentor)
Sponsored by: Netzkommune GmbH
Differential Revision: https://reviews.freebsd.org/D11638
Using ninja instead of make (1) can lead to significant speed ups while building.
Therefore switch from having the ninja generator opt-in to having it opt-out.
Previously cmake-ports that wanted to use ninja could set
CMAKE_NINJA=yes
now, ports that do not work with ninja can set
cmake:<existing args>,noninja
Note, that needing this should be an exception and most often points to a broken
cmake of the port.
The ports using cmake were modified
* removed USES=gmake, if ninja is used
* removed MAKE_ARGS, if ninja is used
* added the cmake-argument noninja if necessary
PR: 219629
PR: 213331
Exp-run by: antoine
Reviewed by: rakuco
Differential Revision: https://reviews.freebsd.org/D10748
Also Delete patches that merged/fixed by upstream.
And fix some no-longer-valid (but needed) patches.
Reviewed by: feld, mat (mentors)
Approved by: feld (mentor)
Differential Revision: https://reviews.freebsd.org/D10392
lang/gcc which have moved from GCC 4.9.4 to GCC 5.4 (at least under some
circumstances such as versions of FreeBSD or platforms).
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using using Mk/bsd.octave.mk which in turn has USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c++11-lib, c++14-lang,
c++11-lang, c++0x, c11, or gcc-c++11-lib.
PR: 216707