From 27b2761f344c24dcfe03d1f8fdb1f439bbfbf45a Mon Sep 17 00:00:00 2001 From: MSVSphere Packaging Team Date: Wed, 6 Mar 2024 03:40:41 +0300 Subject: [PATCH] import mysql-8.0.36-1.el9_3 --- .gitignore | 2 +- .mysql.metadata | 2 +- SOURCES/mysql-arm32-timer.patch | 8 ++-- SOURCES/mysql-c99.patch | 12 ++++++ SOURCES/mysql-mtr.patch | 10 +++-- SOURCES/rh-skipped-tests-list-arm.list | 31 ++------------ SOURCES/rh-skipped-tests-list-base.list | 34 +++------------ SOURCES/rh-skipped-tests-list-ppc.list | 8 +--- SOURCES/rh-skipped-tests-list-s390.list | 35 +--------------- SPECS/mysql.spec | 56 ++++++++++++++++++------- 10 files changed, 78 insertions(+), 120 deletions(-) create mode 100644 SOURCES/mysql-c99.patch diff --git a/.gitignore b/.gitignore index 1df3cb2..1bb222a 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -SOURCES/mysql-boost-8.0.32.tar.gz +SOURCES/mysql-boost-8.0.36.tar.gz diff --git a/.mysql.metadata b/.mysql.metadata index 86debba..2efe297 100644 --- a/.mysql.metadata +++ b/.mysql.metadata @@ -1 +1 @@ -973c4cf495bceaa8387f675e528010c2eed20e97 SOURCES/mysql-boost-8.0.32.tar.gz +fdbf5b1b37a5d882643695593ca25d0a75eb69ed SOURCES/mysql-boost-8.0.36.tar.gz diff --git a/SOURCES/mysql-arm32-timer.patch b/SOURCES/mysql-arm32-timer.patch index d9c616c..bafa0bb 100644 --- a/SOURCES/mysql-arm32-timer.patch +++ b/SOURCES/mysql-arm32-timer.patch @@ -1,10 +1,10 @@ diff --git a/mysql-test/include/mtr_warnings.sql b/mysql-test/include/mtr_warnings.sql -index eff14a67..413dfc27 100644 +index 78b09285..b7153445 100644 --- a/mysql-test/include/mtr_warnings.sql +++ b/mysql-test/include/mtr_warnings.sql -@@ -363,6 +363,11 @@ INSERT INTO global_suppressions VALUES - */ - ("Manifest file '.*' is not read-only. For better security, please make sure that the file is read-only."), +@@ -376,6 +376,11 @@ INSERT INTO global_suppressions VALUES + + ("'mysql_native_password' is deprecated and will be removed in a future release."), + /* + ARM32 don't support timers and get this warning in every test. diff --git a/SOURCES/mysql-c99.patch b/SOURCES/mysql-c99.patch new file mode 100644 index 0000000..935e64f --- /dev/null +++ b/SOURCES/mysql-c99.patch @@ -0,0 +1,12 @@ +diff -ur mysql-8.0.35.orig/plugin/innodb_memcached/daemon_memcached/daemon/memcached.c mysql-8.0.35/plugin/innodb_memcached/daemon_memcached/daemon/memcached.c +--- mysql-8.0.35.orig/plugin/innodb_memcached/daemon_memcached/daemon/memcached.c 2023-10-12 13:45:01.000000000 +0200 ++++ mysql-8.0.35/plugin/innodb_memcached/daemon_memcached/daemon/memcached.c 2023-12-19 10:48:46.718006624 +0100 +@@ -4070,7 +4070,7 @@ + do { + while(key_token->length != 0) { + /* whether there are more keys to fetch */ +- bool next_get = (key_token + 1)->value; ++ bool next_get = (key_token + 1)->value != NULL; + + key = key_token->value; + nkey = key_token->length; diff --git a/SOURCES/mysql-mtr.patch b/SOURCES/mysql-mtr.patch index 629ab5d..f16d6c0 100644 --- a/SOURCES/mysql-mtr.patch +++ b/SOURCES/mysql-mtr.patch @@ -80,9 +80,11 @@ I'm not sure whether the output is synchronous, but even if it wasn'tit still lo ---- mysql-8.0.24/mysql-test/mysql-test-run.pl 2021-05-10 04:29:44.391897891 +0200 -+++ mysql-8.0.24/mysql-test/mysql-test-run.pl_patched 2021-05-10 04:38:51.031702753 +0200 -@@ -3374,17 +3374,6 @@ sub setup_vardir() { +diff --git a/mysql-test/mysql-test-run.pl b/mysql-test/mysql-test-run.pl +index 26e6c92c..9d85c6d6 100755 +--- a/mysql-test/mysql-test-run.pl ++++ b/mysql-test/mysql-test-run.pl +@@ -3533,17 +3533,6 @@ sub setup_vardir() { mkpath("$opt_vardir/tmp"); mkpath($opt_tmpdir) if ($opt_tmpdir ne "$opt_vardir/tmp"); @@ -99,4 +101,4 @@ I'm not sure whether the output is synchronous, but even if it wasn'tit still lo - # Copy all files from std_data into var/std_data # and make them world readable - copytree("$glob_mysql_test_dir/std_data", "$opt_vardir/std_data", "0022"); + copytree("$glob_mysql_test_dir/std_data", "$opt_vardir/std_data", "0022") diff --git a/SOURCES/rh-skipped-tests-list-arm.list b/SOURCES/rh-skipped-tests-list-arm.list index d5a710f..4a423e7 100644 --- a/SOURCES/rh-skipped-tests-list-arm.list +++ b/SOURCES/rh-skipped-tests-list-arm.list @@ -1,32 +1,9 @@ -gis.st_latitude : BUG#0 fails on F32+ -gis.st_longitude : BUG#0 fails on F32+ - -perfschema.func_file_io : BUG#0 missing hw on 32-bit arm -perfschema.global_read_lock : BUG#0 missing hw on 32-bit arm -perfschema.relaylog : BUG#0 missing hw on 32-bit arm -perfschema.setup_objects : BUG#0 missing hw on 32-bit arm - -clone.remote_error_basic : BUG#0 fails since 8.0.19 on F32+, max_allowed_packet is 0 - -clone.remote_dml_auto_tune : BUG#0 - -# Unstable -clone.local_dml_auto_tune : BUG#0 -innodb.innodb_bug-13628249 : BUG#0 -main.grant_dynamic_flush : BUG#0 -innodb.innodb_read_only : BUG#0 - -rpl_nogtid.rpl_mixed_mixing_engines : BUG#0 timeout after 1800 secs or armv7hl - # Failing on C9S & RHEL 9 for MySQL release 8.0.27 sys_vars.innodb_buffer_pool_size_basic : BUG#0 # Unstable on aarch64 since MySQL 8.0.28 innodb_undo.undo_settings : BUG#0 -perfschema.idx_session_account_connect_attrs : BUG#0 -perfschema.idx_session_connect_attrs : BUG#0 -rpl_gtid.rpl_mixed_temp_table_stored_function : BUG#0 -sysschema.pr_ps_setup_show_enabled : BUG#0 -perfschema.idx_threads : BUG#0 -sys_vars.myisam_data_pointer_size_func : BUG#0 -federated.federated_server : BUG#0 + +# Unstable on aarch64 since MySQL 8.0.36 +sys_vars.myisam_data_pointer_size_func : BUG#0 +rpl.rpl_eventlog_psi_memory : BUG#0 diff --git a/SOURCES/rh-skipped-tests-list-base.list b/SOURCES/rh-skipped-tests-list-base.list index 7f716d3..5d68ba5 100644 --- a/SOURCES/rh-skipped-tests-list-base.list +++ b/SOURCES/rh-skipped-tests-list-base.list @@ -22,38 +22,14 @@ x.connection_unixsocket_invalid : BUG#0 x.connection_unixsocket_lock : BUG#0 innodb.innodb_bug-13628249 : BUG#0 -# Failing on C9S & RHEL 9 for MySQL release 8.0.27 -auth_sec.admin_channel_tls : BUG#0 -auth_sec.cipher_support : BUG#0 -auth_sec.openssl_cert_generation : BUG#0 -auth_sec.openssl_without_fips : BUG#0 -auth_sec.ssl_mode : BUG#0 -auth_sec.tls : BUG#0 -auth_sec.tls12_tls1 : BUG#0 -binlog.binlog_grant_alter_user : BUG#0 -main.grant_alter_user_qa : BUG#0 -main.grant_user_lock_qa : BUG#0 -main.openssl_1 : BUG#0 -main.ssl_cipher : BUG#0 -main.ssl_dynamic : BUG#0 -x.connection_openssl : BUG#0 -x.connection_openssl_unixsocket : BUG#0 -x.connection_tls_version : BUG#0 -main.slow_log : BUG#0 -main.ctype_unicode900_as_cs : BUG#0 - -# Failing consistently, but only on C9S ZUUL CI mock build -main.loaddata_special : BUG#0 - -# Failing on all arches since MySQL 8.0.28 -innodb.trigger_function_lock_compare : BUG#0 -# Failing only in i686 since MySQL 8.0.28 -main.index_merge_myisam : BUG#0 - # Failing since MySQL 8.0.29 main.mysqlpump_bugs : BUG#0 -main.slow_log : BUG#0 # Failing since MySQL 8.0.30 auth_sec.fips : BUG#0 rpl.rpl_fips : BUG#0 + +# Failing since MySQL 8.0.35 +binlog.binlog_mysqlbinlog_linux : BUG#0 +perfschema.idx_session_connect_attrs : BUG#0 +rpl_gtid.mysqldump_bug33630199 : BUG#0 diff --git a/SOURCES/rh-skipped-tests-list-ppc.list b/SOURCES/rh-skipped-tests-list-ppc.list index 4386e9c..579f9e7 100644 --- a/SOURCES/rh-skipped-tests-list-ppc.list +++ b/SOURCES/rh-skipped-tests-list-ppc.list @@ -1,9 +1,5 @@ # ppc64le sys_vars.innodb_buffer_pool_size_basic : BUG#0 fails only on ppc64le on f32+ -# Failing on RHEL 9 for MySQL release 8.0.27 -main.sp-threads : BUG#0 -main.dd_upgrade_error : BUG#0 -main.dd_upgrade_non_debug : BUG#0 -main.dd_upgrade_partition : BUG#0 -main.partition_prefixkey_upgrade : BUG#0 +# Unstable on 8.0.35 +rpl.rpl_replica_terminology : BUG#0 diff --git a/SOURCES/rh-skipped-tests-list-s390.list b/SOURCES/rh-skipped-tests-list-s390.list index c477261..3a6668d 100644 --- a/SOURCES/rh-skipped-tests-list-s390.list +++ b/SOURCES/rh-skipped-tests-list-s390.list @@ -1,36 +1,5 @@ -# Fails since 8.0.21 -x.resource_groups : BUG#0 - # Fails since 8.0.22 main.subquery_bugs : BUG#0 -# Fails since F32 Mass Rebuild -gis.geometry_class_attri_prop : BUG#0 -gis.geometry_property_function_issimple : BUG#0 -gis.gis_bugs_crashes : BUG#0 -gis.spatial_analysis_functions_buffer : BUG#0 -gis.spatial_analysis_functions_centroid : BUG#0 -gis.spatial_analysis_functions_distance : BUG#0 -gis.spatial_operators_intersection : BUG#0 -gis.spatial_operators_union : BUG#0 -gis.spatial_operators_symdifference : BUG#0 -gis.spatial_op_testingfunc_mix : BUG#0 -gis.spatial_utility_function_distance_sphere : BUG#0 -gis.spatial_utility_function_simplify : BUG#0 - -main.window_std_var : BUG#0 -main.window_std_var_optimized : BUG#0 -main.with_recursive : BUG#0 - -# Unstable -main.grant_dynamic_flush : BUG#0 - -# Failing on C9S & RHEL 9 for MySQL release 8.0.27 -gis.st_symdifference : BUG#0 -main.regular_expressions_utf-8 : BUG#0 -main.subquery_sj_dupsweed : BUG#0 -main.subquery_sj_dupsweed_bka : BUG#0 -main.subquery_sj_dupsweed_bka_nobnl : BUG#0 -main.subquery_sj_firstmatch : BUG#0 -main.subquery_sj_firstmatch_bka : BUG#0 -main.subquery_sj_firstmatch_bka_nobnl : BUG#0 +# Failing on C9S & RHEL 9 for MySQL release 8.0.33 +main.subquery_sj_all_bka_nobnl : BUG#0 diff --git a/SPECS/mysql.spec b/SPECS/mysql.spec index 279085c..ee0543d 100644 --- a/SPECS/mysql.spec +++ b/SPECS/mysql.spec @@ -1,3 +1,6 @@ +# To both save infrastrucutre resources and workaround testsuite clashes +ExcludeArch: %{ix86} + # Name of the package without any prefixes %global pkg_name %{name} %global pkgnamepatch mysql @@ -13,7 +16,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.32 +%global last_tested_version 8.0.36 # Set to 1 to force run the testsuite even if it was already tested in current version %global force_run_testsuite 0 # Aditional SELinux rules @@ -74,7 +77,7 @@ %global sameevr %{?epoch:%{epoch}:}%{version}-%{release} Name: mysql -Version: 8.0.32 +Version: 8.0.36 Release: 1%{?with_debug:.debug}%{?dist} Summary: MySQL client programs and shared libraries URL: http://www.mysql.com @@ -117,6 +120,7 @@ Patch51: %{pkgnamepatch}-sharedir.patch Patch52: %{pkgnamepatch}-rpath.patch Patch53: %{pkgnamepatch}-mtr.patch Patch54: %{pkgnamepatch}-arm32-timer.patch +Patch55: %{pkgnamepatch}-c99.patch # Patches taken from boost 1.59 Patch111: boost-1.58.0-pool.patch @@ -381,20 +385,21 @@ the MySQL sources. %prep %setup -q -n mysql-%{version} -%patch1 -p1 -%patch3 -p1 -%patch4 -p1 -%patch5 -p1 -%patch51 -p1 -%patch52 -p1 -%patch53 -p1 -%patch54 -p1 +%patch -P1 -p1 +%patch -P3 -p1 +%patch -P4 -p1 +%patch -P5 -p1 +%patch -P51 -p1 +%patch -P52 -p1 +%patch -P53 -p1 +%patch -P54 -p1 +%patch -P55 -p1 # Patch Boost pushd boost/boost_$(echo %{boost_bundled_version}| tr . _) -%patch111 -p0 -%patch112 -p1 -%patch113 -p2 +%patch -P111 -p0 +%patch -P112 -p1 +%patch -P113 -p2 popd # generate a list of tests that fail, but are not disabled by upstream @@ -537,7 +542,6 @@ install -p -m 755 %{_vpath_builddir}/scripts/mysql-check-socket %{buildroot}%{_l install -p -m 644 %{_vpath_builddir}/scripts/mysql-scripts-common %{buildroot}%{_libexecdir}/mysql-scripts-common install -D -p -m 0644 %{_vpath_builddir}/scripts/server.cnf %{buildroot}%{_sysconfdir}/my.cnf.d/%{pkg_name}-server.cnf -rm %{buildroot}%{_infodir}/mysql.info* rm %{buildroot}%{_libdir}/mysql/*.a rm %{buildroot}%{_mandir}/man1/comp_err.1* @@ -634,7 +638,7 @@ export MTR_BUILD_THREAD=$(( $(date +%s) % 2200 )) set -ex cd %{buildroot}%{_datadir}/mysql-test - export common_testsuite_arguments=" %{?with_debug:--debug-server} --parallel=auto --force --retry=2 --suite-timeout=900 --testcase-timeout=30 --mysqld=--binlog-format=mixed --max-test-fail=5 --report-unstable-tests --clean-vardir --mysqld=--skip-innodb-use-native-aio " + export common_testsuite_arguments=" %{?with_debug:--debug-server} --parallel=auto --force --retry=2 --suite-timeout=900 --testcase-timeout=30 --skip-combinations --max-test-fail=5 --report-unstable-tests --clean-vardir --mysqld=--skip-innodb-use-native-aio " # If full testsuite has already been run on this version and we don't explicitly want the full testsuite to be run if [[ "%{last_tested_version}" == "%{version}" ]] && [[ %{force_run_testsuite} -eq 0 ]] @@ -911,9 +915,11 @@ fi %{_libdir}/mysql/plugin/component_test_mysql_current_thread_reader.so %{_libdir}/mysql/plugin/component_test_mysql_runtime_error.so %{_libdir}/mysql/plugin/component_test_mysql_system_variable_set.so +%{_libdir}/mysql/plugin/component_test_mysql_thd_store_service.so %{_libdir}/mysql/plugin/component_test_pfs_notification.so %{_libdir}/mysql/plugin/component_test_pfs_resource_group.so %{_libdir}/mysql/plugin/component_test_sensitive_system_variables.so +%{_libdir}/mysql/plugin/component_test_server_telemetry_traces.so %{_libdir}/mysql/plugin/component_test_status_var_reader.so %{_libdir}/mysql/plugin/component_test_status_var_service_int.so %{_libdir}/mysql/plugin/component_test_status_var_service_reg_only.so @@ -980,6 +986,26 @@ fi %endif %changelog +* Wed Jan 03 2024 Lars Tangvald - 8.0.36-1 +- Update to MySQL 8.0.36 + +* Tue Dec 19 2023 Florian Weimer - 8.0.35-2 +- Fix int-conversion type error in memcached + +* Thu Sep 21 2023 Lars Tangvald - 8.0.35-1 +- Update to MySQL 8.0.35 +- Remove patches now upstream + +* Wed Aug 09 2023 Lars Tangvald - 8.0.34-1 +- Update to MySQL 8.0.34 +- Add patch from upstream bug#110569 +- Add patch to fix binlog format issue +- Use --skip-combinations over --binlog-format=mixed +- Add alignment patch upstream bug#110752 + +* Wed Apr 12 2023 Lars Tangvald - 8.0.33-1 +- Update to MySQL 8.0.33 + * Thu Jan 05 2023 Lars Tangvald - 8.0.32-1 - Update to MySQL 8.0.32