summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristos Chatzaras <chris@cretaforce.gr>2025-08-24 18:41:16 +0200
committerJochen Neumeister <joneum@FreeBSD.org>2025-08-24 18:42:53 +0200
commitba614a3b226631bf387d8066930f154a842f17eb (patch)
tree7d7968f5825eeadc58f77517ac9d3a3874cb67b6
parentdeskutils/py-paperless-ngx: Update to 2.18.2 (diff)
databases/mysql80-{client, server}: Update to 8,0.43
Bugs Fixed Important Note; Group Replication: The Group Communication System (GCS) handles Group Replication communication between members, and keeps track of the group membership and connections between all group members. Membership tracking includes the membership's current and previous two iterations. When a member leaves, the remaining members in the group keep a record of the departing member but stop communicating with it until it returns. For example: The group contains members M1, M2, and M3. M3 leaves the group; M1 and M2 stop communicating with M3. When a new member (M4) joins, it learns the previous iterations of this group's membership and attempts to communicate with all servers, including those from previous iterations (in this case, M3). In the event that some previous servers were gone and did not return, the new member continuously tried to connect to the missing servers; in some conditions, these ongoing connection attempts could introduce network latency affecting group member communication. In order to avoid this issue, connections to servers that belong to iterations of the group membership are now stopped after 5 minutes, which should be sufficient time to re-establish valid connections without imposing a continuing impact on group communication. (Bug NDB Cluster: Following an upgrade from NDB 8.0 to NDB 8.4, all data nodes in the cluster underwent an unexpected simultaneous restart. This occurred when the transaction coordinator had no scan state, leading to protocol timeout; the resulting misalignement in protocol states caused data nodes to shut down unexpectedly. This is fixed by extending existing handling of an unexpected SCAN_NEXTREQ signal to cover the case when the scan is already stateless. (Bug #37994985) References: This issue is a regression of: Bug #37022901. Full Changelog see: https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-43.html PR: 288952 Sponsored by: Netzkommune GmbH
-rw-r--r--databases/mysql80-server/Makefile2
-rw-r--r--databases/mysql80-server/distinfo6
-rw-r--r--databases/mysql80-server/files/patch-sql_mdl__context__backup.h10
-rw-r--r--databases/mysql80-server/files/patch-sql_range__optimizer_index__range__scan__plan.cc39
-rw-r--r--databases/mysql80-server/files/patch-sql_stream__cipher.h14
-rw-r--r--databases/mysql80-server/files/patch-unittest_gunit_binlogevents_transaction__compression-t.cc11
6 files changed, 16 insertions, 66 deletions
diff --git a/databases/mysql80-server/Makefile b/databases/mysql80-server/Makefile
index 3249e5753c5d..b4e489fa930e 100644
--- a/databases/mysql80-server/Makefile
+++ b/databases/mysql80-server/Makefile
@@ -1,5 +1,5 @@
PORTNAME?= mysql
-PORTVERSION= 8.0.42
+PORTVERSION= 8.0.43
PORTREVISION?= 0
CATEGORIES= databases
MASTER_SITES= MYSQL/MySQL-8.0
diff --git a/databases/mysql80-server/distinfo b/databases/mysql80-server/distinfo
index ab25a6ee8a4c..2e2aacae1568 100644
--- a/databases/mysql80-server/distinfo
+++ b/databases/mysql80-server/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1744706424
-SHA256 (mysql-boost-8.0.42.tar.gz) = c2aa67c618edfa1bc379107fe819ca8e94cba5d85f156d1053b8fedc88cc5f8f
-SIZE (mysql-boost-8.0.42.tar.gz) = 492301593
+TIMESTAMP = 1755599236
+SHA256 (mysql-boost-8.0.43.tar.gz) = 85fd5c3ac88884dc5ac4522ce54ad9c11a91f9396fecaa27152c757a3e6e936f
+SIZE (mysql-boost-8.0.43.tar.gz) = 492715363
diff --git a/databases/mysql80-server/files/patch-sql_mdl__context__backup.h b/databases/mysql80-server/files/patch-sql_mdl__context__backup.h
index ba52b78fcd5b..d7106154b0fe 100644
--- a/databases/mysql80-server/files/patch-sql_mdl__context__backup.h
+++ b/databases/mysql80-server/files/patch-sql_mdl__context__backup.h
@@ -1,11 +1,11 @@
---- sql/mdl_context_backup.h.orig 2024-07-12 19:15:25 UTC
+--- sql/mdl_context_backup.h.orig 2025-08-19 10:30:31 UTC
+++ sql/mdl_context_backup.h
-@@ -47,7 +47,7 @@ class MDL_context_backup_manager {
- /**
+@@ -49,7 +49,7 @@ class MDL_context_backup_manager {
Key for uniquely identifying MDL_context in the MDL_context_backup map.
*/
-- typedef std::basic_string<uchar> MDL_context_backup_key;
-+ typedef std::vector<uchar> MDL_context_backup_key;
+ using MDL_context_backup_key =
+- std::basic_string<uchar, my_char_traits<uchar>>;
++ std::vector<uchar>;
class MDL_context_backup;
diff --git a/databases/mysql80-server/files/patch-sql_range__optimizer_index__range__scan__plan.cc b/databases/mysql80-server/files/patch-sql_range__optimizer_index__range__scan__plan.cc
deleted file mode 100644
index 656f14800d8a..000000000000
--- a/databases/mysql80-server/files/patch-sql_range__optimizer_index__range__scan__plan.cc
+++ /dev/null
@@ -1,39 +0,0 @@
---- sql/range_optimizer/index_range_scan_plan.cc.orig 2024-07-12 19:15:25 UTC
-+++ sql/range_optimizer/index_range_scan_plan.cc
-@@ -1016,11 +1016,11 @@ static bool null_part_in_key(KEY_PART *key_part, const
- return false;
- }
-
--// TODO(sgunders): This becomes a bit simpler with C++20's string_view
--// constructors.
--static inline std::basic_string_view<uchar> make_string_view(const uchar *start,
-- const uchar *end) {
-- return {start, static_cast<size_t>(end - start)};
-+static inline bool equal(const uchar *start1, const uchar *end1,
-+ const uchar *start2, const uchar *end2) {
-+ auto diff1 = end1 - start1;
-+ auto diff2 = end2 - start2;
-+ return diff1 == diff2 && memcmp(start1, start2, diff1) == 0;
- }
-
- /**
-@@ -1083,8 +1083,7 @@ static bool get_ranges_from_tree_given_base(
- node->next_key_part->type == SEL_ROOT::Type::KEY_RANGE &&
- node->next_key_part->root->part == part + 1) {
- if (node->min_flag == 0 && node->max_flag == 0 &&
-- make_string_view(min_key, tmp_min_key) ==
-- make_string_view(max_key, tmp_max_key)) {
-+ equal(min_key, tmp_min_key, max_key, tmp_max_key)) {
- // This range was an equality predicate, and we have more
- // keyparts to scan, so use its range as a base for ranges on
- // the next keypart(s). E.g. if we have (a = 3) on this keypart,
-@@ -1160,8 +1159,7 @@ static bool get_ranges_from_tree_given_base(
- else
- flag |= NO_MAX_RANGE;
- }
-- if (flag == 0 && make_string_view(base_min_key, tmp_min_key) ==
-- make_string_view(base_max_key, tmp_max_key)) {
-+ if (flag == 0 && equal(base_min_key, tmp_min_key, base_max_key, tmp_max_key)) {
- flag |= EQ_RANGE;
- /*
- Note that keys which are extended with PK parts have no
diff --git a/databases/mysql80-server/files/patch-sql_stream__cipher.h b/databases/mysql80-server/files/patch-sql_stream__cipher.h
index 58730a516873..63c2e8b5707b 100644
--- a/databases/mysql80-server/files/patch-sql_stream__cipher.h
+++ b/databases/mysql80-server/files/patch-sql_stream__cipher.h
@@ -1,4 +1,4 @@
---- sql/stream_cipher.h.orig 2024-07-12 19:15:25 UTC
+--- sql/stream_cipher.h.orig 2025-08-19 10:33:36 UTC
+++ sql/stream_cipher.h
@@ -27,6 +27,7 @@
#include <openssl/evp.h>
@@ -6,14 +6,14 @@
#include <string>
+#include <vector>
- /**
- @file stream_cipher.h
-@@ -35,7 +36,7 @@
- binary log files.
+ #include "my_char_traits.h"
+
+@@ -38,7 +39,7 @@ using Key_string =
*/
--typedef std::basic_string<unsigned char> Key_string;
-+typedef std::vector<unsigned char> Key_string;
+ using Key_string =
+- std::basic_string<unsigned char, my_char_traits<unsigned char>>;
++ std::vector<unsigned char>;
/**
@class Stream_cipher
diff --git a/databases/mysql80-server/files/patch-unittest_gunit_binlogevents_transaction__compression-t.cc b/databases/mysql80-server/files/patch-unittest_gunit_binlogevents_transaction__compression-t.cc
deleted file mode 100644
index 4ac80661920f..000000000000
--- a/databases/mysql80-server/files/patch-unittest_gunit_binlogevents_transaction__compression-t.cc
+++ /dev/null
@@ -1,11 +0,0 @@
---- unittest/gunit/binlogevents/transaction_compression-t.cc.orig 2024-07-12 19:15:25 UTC
-+++ unittest/gunit/binlogevents/transaction_compression-t.cc
-@@ -51,7 +51,7 @@ class TransactionPayloadCompressionTest : public ::tes
- using Managed_buffer_t = Decompressor_t::Managed_buffer_t;
- using Size_t = Decompressor_t::Size_t;
- using Char_t = Decompressor_t::Char_t;
-- using String_t = std::basic_string<Char_t>;
-+ using String_t = std::vector<Char_t>;
- using Decompress_status_t =
- binary_log::transaction::compression::Decompress_status;
- using Compress_status_t =