From f1889a9c87b8c2a807c04a1a7c919c0468733e39 Mon Sep 17 00:00:00 2001 From: Pavol Sloboda Date: Thu, 24 Apr 2025 15:31:36 +0200 Subject: [PATCH 1/4] Rebase to 8.0.42 Upstream release notes: https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-42.html updated the patch that disables using the deprecated openssl engine https://fedoraproject.org/wiki/Changes/OpensslNoEngine https://fedoraproject.org/wiki/Changes/OpensslDeprecateEngine --- mysql-openssl-engine.patch | 15 +++++++-------- mysql8.0.spec | 5 ++++- sources | 2 +- 3 files changed, 12 insertions(+), 10 deletions(-) diff --git a/mysql-openssl-engine.patch b/mysql-openssl-engine.patch index de1d368..840fe72 100644 --- a/mysql-openssl-engine.patch +++ b/mysql-openssl-engine.patch @@ -1,15 +1,14 @@ -https://fedoraproject.org/wiki/Changes/OpensslDeprecateEngine -https://fedoraproject.org/wiki/Changes/OpensslNoEngine - ---- mysql-8.0.37/plugin/group_replication/libmysqlgcs/src/bindings/xcom/xcom/network/xcom_network_provider_ssl_native_lib.cc 2024-03-27 20:22:56.000000000 +0100 -+++ mysql-8.0.37/plugin/group_replication/libmysqlgcs/src/bindings/xcom/xcom/network/xcom_network_provider_ssl_native_lib.cc_patched 2024-07-18 17:01:59.488433958 +0200 -@@ -41,7 +41,9 @@ +--- mysql-8.0.42/plugin/group_replication/libmysqlgcs/src/bindings/xcom/xcom/network/xcom_network_provider_ssl_native_lib.cc 2025-03-31 10:19:27.000000000 +0200 ++++ mysql-8.0.42-patched/plugin/group_replication/libmysqlgcs/src/bindings/xcom/xcom/network/xcom_network_provider_ssl_native_lib.cc 2025-04-24 15:27:29.155287397 +0200 +@@ -50,9 +50,9 @@ #include "my_compiler.h" #endif +-#if OPENSSL_VERSION_NUMBER < 0x10100000L +#if !defined(OPENSSL_NO_ENGINE) - #include "openssl/engine.h" + #include +-#endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */ +#endif + #include "xcom/retry.h" #include "xcom/task_debug.h" - #include "xcom/x_platform.h" diff --git a/mysql8.0.spec b/mysql8.0.spec index b323e42..b43058a 100644 --- a/mysql8.0.spec +++ b/mysql8.0.spec @@ -1,6 +1,6 @@ # Name of the package without any prefixes %global majorname mysql -%global package_version 8.0.41 +%global package_version 8.0.42 %define majorversion %(echo %{package_version} | cut -d'.' -f1-2 ) %global pkgnamepatch mysql @@ -1104,6 +1104,9 @@ fi %endif %changelog +* Thu Apr 24 2025 Pavol Sloboda - 8.0.42-1 +- Rebase to MySQL 8.0.42 + * Fri Feb 28 2025 Michal Schorm - 8.0.41-1 - Rebase to MySQL 8.0.41 diff --git a/sources b/sources index f014b75..4ca1e17 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (mysql-boost-8.0.41.tar.gz) = e5bb314082be6bf037808ea7a2130c8e2b44491a6c54bc3f611d823be5285021d05093afca71c3d33da6dece2bac3a8e24da5198080060407d8c4dbfeeea8a99 +SHA512 (mysql-boost-8.0.42.tar.gz) = 66776b5a1be603f215d4b227d395e72476bde76fdc0ba5ffdcfcb851a8261f1428c23c8abf1edca616765ee8254354e9092eaadde5ed43e7e2daa2ac265a0b23 From 5d6ba8cf831aabda4cdabf99d680e17412af00da Mon Sep 17 00:00:00 2001 From: Pavol Sloboda Date: Wed, 7 May 2025 14:44:03 +0200 Subject: [PATCH 2/4] Added the tests that failed reocurringly Added the tests with reocurring failures for arches s390x and ppc64le into their respective ignore lists, other arches (and the ones mentioned here) had a few failing tests but these were the only ones that failed almost every time Bumped the version of last_tested_version Changed the version of last_tested_version to the current one after running the expanded testsuite and updating the skipped test lists Koji scratch builds with full testsuite: f40: https://koji.fedoraproject.org/koji/taskinfo?taskID=132209779 rebuild of ppc64le because of a misc test unrelated fail: https://koji.fedoraproject.org/koji/taskinfo?taskID=132343011 https://koji.fedoraproject.org/koji/taskinfo?taskID=132348944 f41: https://koji.fedoraproject.org/koji/taskinfo?taskID=132209572 https://koji.fedoraproject.org/koji/taskinfo?taskID=132348955 f42: https://koji.fedoraproject.org/koji/taskinfo?taskID=132209514 https://koji.fedoraproject.org/koji/taskinfo?taskID=132348960 f43: https://koji.fedoraproject.org/koji/taskinfo?taskID=132209508 https://koji.fedoraproject.org/koji/taskinfo?taskID=132348945 --- mysql8.0.spec | 2 +- rh-skipped-tests-list-ppc.list | 3 +++ rh-skipped-tests-list-s390.list | 3 +++ 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/mysql8.0.spec b/mysql8.0.spec index b43058a..2eec54f 100644 --- a/mysql8.0.spec +++ b/mysql8.0.spec @@ -19,7 +19,7 @@ # The last version on which the full testsuite has been run # In case of further rebuilds of that version, don't require full testsuite to be run # run only "main" suite -%global last_tested_version 8.0.41 +%global last_tested_version 8.0.42 # Set to 1 to force run the testsuite even if it was already tested in current version %global force_run_testsuite 0 diff --git a/rh-skipped-tests-list-ppc.list b/rh-skipped-tests-list-ppc.list index 9ffdb04..a534953 100644 --- a/rh-skipped-tests-list-ppc.list +++ b/rh-skipped-tests-list-ppc.list @@ -47,3 +47,6 @@ main.dd_upgrade_partition : BUG#0 main.disabled_storage_engines : BUG#0 main.partition : BUG#0 main.multi_update : BUG#0 + +# Fails since 8.0.42 +innodb_fts.optimize_big : BUG#0 diff --git a/rh-skipped-tests-list-s390.list b/rh-skipped-tests-list-s390.list index a2d393c..451d206 100644 --- a/rh-skipped-tests-list-s390.list +++ b/rh-skipped-tests-list-s390.list @@ -5,3 +5,6 @@ rpl_gtid.rpl_perfschema_applier_status_by_worker_gtid_skipped_transaction_mts : # Fails since 8.0.37 innodb.lob_recovery : BUG#0 sys_vars.myisam_data_pointer_size_func : BUG#0 + +# Fails since 8.0.42 +x.connection_not_alive : BUG#0 From 688ea0bb57a50c6ae0118080d9b36675a49facb6 Mon Sep 17 00:00:00 2001 From: Michal Schorm Date: Wed, 9 Jul 2025 09:56:08 +0200 Subject: [PATCH 3/4] Disable the testsuite - ppc64le infractructure issues Can be re-enabled when the ppc64le builds reach similar time and stability as the other architectures --- mysql8.0.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mysql8.0.spec b/mysql8.0.spec index 2eec54f..ef05bea 100644 --- a/mysql8.0.spec +++ b/mysql8.0.spec @@ -11,7 +11,7 @@ # Regression tests may take a long time (many cores recommended), skip them by # passing --nocheck to rpmbuild or by setting runselftest to 0 if defining # --nocheck is not possible (e.g. in koji build) -%{!?runselftest:%global runselftest 1} +%{!?runselftest:%global runselftest 0} # Set this to 1 to see which tests fail, but 0 on production ready build %global ignore_testsuite_result 0 From b853f1b08768892b680ee12c36cc7328a0235d3a Mon Sep 17 00:00:00 2001 From: Michal Schorm Date: Wed, 9 Jul 2025 09:55:43 +0200 Subject: [PATCH 4/4] [Fix for Fedora Change] Fix versioned layout macros - cover both arch and noarch sub-packages - add obsoletes against the older versions to the distribution default version --- mysql8.0.spec | 38 +++++++++++++++++++++++++------------- 1 file changed, 25 insertions(+), 13 deletions(-) diff --git a/mysql8.0.spec b/mysql8.0.spec index ef05bea..a1979d6 100644 --- a/mysql8.0.spec +++ b/mysql8.0.spec @@ -102,7 +102,7 @@ Name: %{majorname}%{majorversion} Version: %{package_version} -Release: 1%{?with_debug:.debug}%{?dist} +Release: 2%{?with_debug:.debug}%{?dist} Summary: MySQL client programs and shared libraries URL: http://www.mysql.com @@ -273,20 +273,32 @@ Conflicts: %{majorname}%{?1:-%{1}}-any\ # Provide also mysqlX.X if default %if %?mysql_default -%define mysqlX_if_default() %{expand:\ +%define mysqlX_if_default_arched() %{expand:\ +Obsoletes: mysql%{?1:-%{1}} < %{sameevr}\ +Obsoletes: mysql%{majorversion}%{?1:-%{1}} < %{sameevr}\ Provides: mysql%{majorversion}%{?1:-%{1}} = %{sameevr}\ Provides: mysql%{majorversion}%{?1:-%{1}}%{?_isa} = %{sameevr}\ } +%define mysqlX_if_default_noarch() %{expand:\ +Obsoletes: mysql%{?1:-%{1}} < %{sameevr}\ +Obsoletes: mysql%{majorversion}%{?1:-%{1}} < %{sameevr}\ +Provides: mysql%{majorversion}%{?1:-%{1}} = %{sameevr}\ +} %else -%define mysqlX_if_default() %{nil} +%define mysqlX_if_default_arched() %{nil} +%define mysqlX_if_default_noarch() %{nil} %endif -%define add_metadata() %{expand:\ +%define add_metadata_arched() %{expand:\ %conflict_with_other_streams %{**}\ -%mysqlX_if_default %{**}\ +%mysqlX_if_default_arched %{**}\ +} +%define add_metadata_noarch() %{expand:\ +%conflict_with_other_streams %{**}\ +%mysqlX_if_default_noarch %{**}\ } -%add_metadata +%add_metadata_arched %description MySQL is a multi-user, multi-threaded SQL database server. MySQL is a @@ -308,7 +320,7 @@ Requires: %{pkgname}-common = %{sameevr} %{?with_provides_community_mysql:Provides: community-mysql-libs%{?_isa}= %community_mysql_version} %{?with_obsoletes_community_mysql:Obsoletes: community-mysql-libs <= %obsolete_community_mysql_version} -%add_metadata libs +%add_metadata_arched libs %description -n %{pkgname}-libs The mysql-libs package provides the essential shared libraries for any @@ -325,7 +337,7 @@ Summary: The config files required by server and client %{?with_provides_community_mysql:Provides: community-mysql-config%{?_isa} = %community_mysql_version} %{?with_obsoletes_community_mysql:Obsoletes: community-mysql-config <= %obsolete_community_mysql_version} -%add_metadata config +%add_metadata_arched config %description -n %{pkgname}-config The package provides the config file my.cnf and my.cnf.d directory used by any @@ -348,7 +360,7 @@ Requires: %{_sysconfdir}/my.cnf %{?with_obsoletes_community_mysql:Obsoletes: community-mysql-common <= %obsolete_community_mysql_version} # As this package is noarch, it can't use the %%{?_isa} RPM macro -%conflict_with_other_streams common +%add_metadata_noarch common %description -n %{pkgname}-common The mysql-common package provides the essential shared files for any @@ -366,7 +378,7 @@ Requires: %{pkgname}-common = %{sameevr} %{?with_obsoletes_community_mysql:Obsoletes: community-mysql-errmsg <= %obsolete_community_mysql_version} # As this package is noarch, it can't use the %%{?_isa} RPM macro -%conflict_with_other_streams errmsg +%add_metadata_noarch errmsg %description -n %{pkgname}-errmsg The package provides error messages files for the MySQL daemon @@ -413,7 +425,7 @@ Requires: (mysql-selinux if selinux-policy-targeted) %{?with_provides_community_mysql:Provides: community-mysql-server%{?_isa} = %community_mysql_version} %{?with_obsoletes_community_mysql:Obsoletes: community-mysql-server <= %obsolete_community_mysql_version} -%add_metadata server +%add_metadata_arched server %description -n %{pkgname}-server MySQL is a multi-user, multi-threaded SQL database server. MySQL is a @@ -435,7 +447,7 @@ Requires: libzstd-devel %{?with_provides_community_mysql:Provides: community-mysql-devel%{?_isa} = %community_mysql_version} %{?with_obsoletes_community_mysql:Obsoletes: community-mysql-devel <= %obsolete_community_mysql_version} -%add_metadata devel +%add_metadata_arched devel %description -n %{pkgname}-devel MySQL is a multi-user, multi-threaded SQL database server. This @@ -475,7 +487,7 @@ Requires: perl(Time::HiRes) %{?with_provides_community_mysql:Provides: community-mysql-test%{?_isa} = %community_mysql_version} %{?with_obsoletes_community_mysql:Obsoletes: community-mysql-test <= %obsolete_community_mysql_version} -%add_metadata test +%add_metadata_arched test %description -n %{pkgname}-test MySQL is a multi-user, multi-threaded SQL database server. This