There have been lots of missing CONFLICTS_INSTALL entries, either
because conflicting ports were added without updating existing ports,
due to name changes of generated packages, due to mis-understanding
the format and semantics of the conflicts entries, or just due to
typoes in package names.
This patch is the result of a comparison of all files contained in
the official packages with each other. This comparison was based on
packages built with default options and may therefore have missed
further conflicts with optionally installed files.
Where possible, version numbers in conflicts entries have been
generalized, some times taking advantage of the fact that a port
cannot conflict with itself (due to logic in bsd.port.mk that
supresses the pattern match result in that case).
A few ports that set the conflicts variables depending on complex
conditions (e.g. port options), have been left unmodified, despite
probably containing outdated package names.
These changes should only affect the installation of locally built
ports, not the package building with poudriere. They should give an
early indication of the install conflict in cases where currently
the pkg command aborts an installation when it detects that an
existing file would be overwritten,
Approved by: portmgr (implicit)
The conflict checks compare the patterns first against the package
names without version (as reported by "pkg query "%n"), then - if
there was no match - agsinst the full package names including the
version (as reported by "pkg query "%n-%v").
Approved by: portmgr (blanket)
While here, include a change that I have had in my tree for some time, to
turn a .error message into IGNORE= as per the Porter's Handbook.
Approved by: portmgr (tier-2 blanket)
- Performance: Certain queries against tables with spatial indexes were not performed as efficiently following an upgrade from MySQL 5.7 to MySQL 8.0.
- NDB Cluster: NDB defines one SPJ worker per node owning a primary partition of the root table. If this table used read from any replica, DBTC put all SPJ workers in the same DBSPJ instance, which effe
- NDB Cluster: Executing the SHOW command using an ndb_mgm client binary from NDB 8.0.16 or earlier to access a management node running NDB 8.0.17 or later produced the error message Unknown field: is_s
- On EL7 and EL8, CMake configuration was adjusted to look for GCC 9 before GCC 8. Because libmysqlclient ships with MySQL distributions, client applications built against libmysqlclient on those platfo
- The max_length_for_sort_data system variable is now deprecated due to optimizer changes that make it obsolete and of no effect.
More Infos: https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-20.html
Special thanks to: fluffy
MFH: 2020Q2
Security: 21d59ea3-8559-11ea-a5e2-d4c9ef517024 (MySQL - Server)
Security: 622b5c47-855b-11ea-a5e2-d4c9ef517024 (MySQL - Client)
Sponsored by: Netzkommune GmbH
- New FPROFILE_GENERATE and FPROFILE_USE CMake options are available for experimenting with profile guided optimization (PGO) with GCC. See the cmake/fprofile.cmake in a MySQL source distribution for information about using them. These options have been tested with GCC 8 and 9, and with Clang.
- Enabling FPROFILE_USE also enables WITH_LTO (link time optimization).
- Innodb_system_rows_read, Innodb_system_rows_inserted, Innodb_system_rows_deleted status variables were added for counting row operations on InnoDB tables that belong to system-created schemas. The new status variables are similar to the existing Innodb_rows_read, Innodb_rows_inserted, Innodb_rows_deleted status variables, which count operations on InnoDB tables that belong to both user-created and system-created schemas.
- The new status variables are useful in replication environments where relay_log_info_repository and master_info_repository variables are set to TABLE, resulting in higher row operation counts on slaves due to operations performed on the slave_master_info, slave_replay_log_info, and slave_worker_info tables, which belong to the system-created mysql schema. For a valid comparison of master and slave row operation counts, operations on tables in system-created schemas can now be excluded using the count data provided by the new status variables.
More infos: https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-19.html
Submitted by: fluffy
Approved by: mmokhi (maintainer, implicit)
Sponsored by: Netzkommune GmbH
switch patch-files to mysql80-server to make it easy for maintain.
Bugfix:
- CMake now enables use of fastcov if it is available. fastcov is faster than lcov or gcov. This requires GCC and gcov versions of 9 or higher.
- The DISABLE_SHARED CMake option was unused and has been removed.
- The CMake code to find Protobuf executables now works on platforms that split these into multiple packages.
- The new ADD_GDB_INDEX CMake option determines whether to enable generation of a .gdb_index section in binaries, which makes loading them in a debugger faster. The option is disabled by default. It has no effect if a linker other than lld or GNU gold is used.
- For the INSTALL_LAYOUT CMake option, the SLES and WIN option values were not used and have been removed.
- The max_prepared_stmt_count system variable maximum value has been increased from 1 million (1,048,576) to 4 million (4,194,304). The default value remains unchanged at 16,382.
- MySQL 8.0 no longer supports building using wolfSSL. All MySQL builds now use OpenSSL.
- The RE2 library is no longer used by MySQL. The library is no longer bundled with source distributions and the WITH_RE2 CMake option is obsolete.
More Infos: https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-18.html
A big thanks to @fluffy for his help with this update
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:
Bugfixes:
- InnoDB: Undo tablespaces remained unencrypted after enabling
undo tablespace encryption at startup. (Bug #29477795)
- InnoDB: Problematic macros introduced with undo tablespace DDL support
(Bug #29324132, Bug #94243).
- InnoDB: Static thread local variables defined at the wrong scope
were not released at thread exit. (Bug #29305186)
- Memory leaks discovered in the innochecksum (Bug #28917614, Bug #93164).
New features:
- MySQL C API now supports asynchronous functions for
nonblocking communication with the MySQL server.
- MySQL now supports a new Chinese collation, utf8mb4_zh_0900_as_cs
- CMake now causes the build process to link with the llvm lld linker
for Clang if it is available.
Security Fix:
CVE-2019-2632, CVE-2019-2693, CVE-2019-2694, CVE-2019-2695 and other fixes.
More info: https://www.oracle.com/technetwork/security-advisory/cpuapr2019-5072813.html#AppendixMSQL
PR: 237399
Reported by: Brent Busby <brent@jfi.uchicago.edu>
Sponsored by: The FreeBSD Foundation
This is a quick release after 8.0.14 which fixes Bug #29249542, Bug #94004
on upstream (Group repl. doesn't work when IPv6 is disabled on OS)
More info on upstream: https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-15.html
While here, delete the no-more-needed warning from "pkg-message" since MySQL8.0 is GA.
Sponsored by: The FreeBSD Foundation
This update (released on Jan 21st) includes:
Bugs Fixed:
Important Change: Fix importing a dump from a MySQL 5.7 server 8.0 failure.
(ER_WRONG_VALUE_FOR_VAR, when an unsupported [by 8.0] SQL mode was used).
The behavior of the server in such circumstances now depends on the setting of the
`pseudo_slave_mode` system variable.
If this is false, the server rejects the mode setting with ER_UNSUPPORTED_SQL_MODE.
Otherwise, server just gives a warning. (Bug #90337, Bug #27828236).
InnoDB: Properly initialize the static thread-local 'tables' variable in
the TempTable storage engine (on Solaris X86) was not properly initialized.
(Bug #28987365)
InnoDB: Fix incorrect lock order caused a deadlock when one thread attempted to
drop a table while another created an encrypted tablespace. (Bug #28774259)
More info from upstream:
https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-14.html
While here, Adapt some local patches with new upstream changes.
PR: 234984
Sponsored by: The FreeBSD Foundation
This update fixes several issues including CVEs.
Bug-fixes:
- Return better error messages for OpenSSL errors
- Incorrect copying of an integer value by X Plugin caused an
error relating to misaligned memory access
Improvement:
- Important Change: X Protocol now provides a connection pooling option
Upstream notes: https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-13
While here, fix the build with GCC-based architectures too (ported from fix on MySQL57)
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