From 36e47c3b3debb018e8b6586dea1e52b29dfc8447 Mon Sep 17 00:00:00 2001 From: Lars Tangvald Date: Thu, 2 Jan 2020 19:17:25 +0100 Subject: [PATCH] Update to MySQL 8.0.19 --- community-mysql-2020.patch | 103 ++++++++++++++++++++++++++++ community-mysql-arm32-timer.patch | 6 +- community-mysql-paths.patch | 20 +++--- community-mysql-protobuf-3-11.patch | 26 ------- community-mysql-scripts.patch | 6 +- community-mysql.spec | 28 +++++--- sources | 2 +- 7 files changed, 137 insertions(+), 54 deletions(-) create mode 100644 community-mysql-2020.patch delete mode 100644 community-mysql-protobuf-3-11.patch diff --git a/community-mysql-2020.patch b/community-mysql-2020.patch new file mode 100644 index 0000000..96f3819 --- /dev/null +++ b/community-mysql-2020.patch @@ -0,0 +1,103 @@ +diff --git a/mysql-test/r/events_bugs.result b/mysql-test/r/events_bugs.result +index 56821679efe..b05c76a7586 100644 +--- a/mysql-test/r/events_bugs.result ++++ b/mysql-test/r/events_bugs.result +@@ -42,11 +42,11 @@ Warnings: + Note 1588 Event execution time is in the past and ON COMPLETION NOT PRESERVE is set. The event was dropped immediately after creation. + show events; + Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation +-create event e_55 on schedule at 20200101000000 starts 10000101000000 do drop table t; ++create event e_55 on schedule at 20380101000000 starts 10000101000000 do drop table t; + ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'starts 10000101000000 do drop table t' at line 1 +-create event e_55 on schedule at 20200101000000 ends 10000101000000 do drop table t; ++create event e_55 on schedule at 20380101000000 ends 10000101000000 do drop table t; + ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ends 10000101000000 do drop table t' at line 1 +-create event e_55 on schedule at 20200101000000 starts 10000101000000 ends 10000101000000 do drop table t; ++create event e_55 on schedule at 20380101000000 starts 10000101000000 ends 10000101000000 do drop table t; + ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'starts 10000101000000 ends 10000101000000 do drop table t' at line 1 + create event e_55 on schedule every 10 hour starts 10000101000000 do drop table t; + ERROR HY000: Incorrect STARTS value: '10000101000000' +@@ -411,16 +411,16 @@ SHOW EVENTS; + Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation + events_test e1 root@localhost +02:00 ONE TIME 2000-01-02 00:00:00 NULL NULL NULL NULL DISABLED 1 latin1 latin1_swedish_ci utf8mb4_0900_ai_ci + SET TIME_ZONE= '-03:00'; +-ALTER EVENT e1 ON SCHEDULE EVERY 1 DAY ENDS '2030-01-03 00:00:00' ++ALTER EVENT e1 ON SCHEDULE EVERY 1 DAY ENDS '2038-01-03 00:00:00' + ON COMPLETION PRESERVE DISABLE; + SHOW EVENTS; + Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation +-events_test e1 root@localhost -03:00 RECURRING NULL 1 DAY 2005-12-31 20:58:59 2030-01-03 00:00:00 DISABLED 1 latin1 latin1_swedish_ci utf8mb4_0900_ai_ci ++events_test e1 root@localhost -03:00 RECURRING NULL 1 DAY 2005-12-31 20:58:59 2038-01-03 00:00:00 DISABLED 1 latin1 latin1_swedish_ci utf8mb4_0900_ai_ci + SET TIME_ZONE= '+04:00'; + ALTER EVENT e1 DO SELECT 2; + SHOW EVENTS; + Db Name Definer Time zone Type Execute at Interval value Interval field Starts Ends Status Originator character_set_client collation_connection Database Collation +-events_test e1 root@localhost -03:00 RECURRING NULL 1 DAY 2005-12-31 20:58:59 2030-01-03 00:00:00 DISABLED 1 latin1 latin1_swedish_ci utf8mb4_0900_ai_ci ++events_test e1 root@localhost -03:00 RECURRING NULL 1 DAY 2005-12-31 20:58:59 2038-01-03 00:00:00 DISABLED 1 latin1 latin1_swedish_ci utf8mb4_0900_ai_ci + DROP EVENT e1; + SET TIME_ZONE='+05:00'; + CREATE EVENT e1 ON SCHEDULE EVERY 1 DAY STARTS '2006-01-01 00:00:00' DO +@@ -647,7 +647,7 @@ SET GLOBAL READ_ONLY = 1; + # Connection: u1_con (mysqltest_u1@localhost/events_test). + # + +-CREATE EVENT e1 ON SCHEDULE AT '2020-01-01 00:00:00' DO SET @a = 1; ++CREATE EVENT e1 ON SCHEDULE AT '2038-01-01 00:00:00' DO SET @a = 1; + ERROR HY000: The MySQL server is running with the --read-only option so it cannot execute this statement + + ALTER EVENT e1 COMMENT 'comment'; +@@ -660,7 +660,7 @@ ERROR HY000: The MySQL server is running with the --read-only option so it canno + # Connection: root_con (root@localhost/events_test). + # + +-CREATE EVENT e1 ON SCHEDULE AT '2020-01-01 00:00:00' DO SET @a = 1; ++CREATE EVENT e1 ON SCHEDULE AT '2038-01-01 00:00:00' DO SET @a = 1; + + ALTER EVENT e1 COMMENT 'comment'; + +diff --git a/mysql-test/t/events_bugs.test b/mysql-test/t/events_bugs.test +index b35e8627852..8a4de2d4d55 100644 +--- a/mysql-test/t/events_bugs.test ++++ b/mysql-test/t/events_bugs.test +@@ -216,11 +216,11 @@ create event e_55 on schedule at 20000101000000 do drop table t; + show events; + + --error ER_PARSE_ERROR +-create event e_55 on schedule at 20200101000000 starts 10000101000000 do drop table t; ++create event e_55 on schedule at 20380101000000 starts 10000101000000 do drop table t; + --error ER_PARSE_ERROR +-create event e_55 on schedule at 20200101000000 ends 10000101000000 do drop table t; ++create event e_55 on schedule at 20380101000000 ends 10000101000000 do drop table t; + --error ER_PARSE_ERROR +-create event e_55 on schedule at 20200101000000 starts 10000101000000 ends 10000101000000 do drop table t; ++create event e_55 on schedule at 20380101000000 starts 10000101000000 ends 10000101000000 do drop table t; + --error ER_WRONG_VALUE + create event e_55 on schedule every 10 hour starts 10000101000000 do drop table t; + +@@ -722,7 +722,7 @@ SHOW EVENTS; + + # This will update event time zone. + SET TIME_ZONE= '-03:00'; +-ALTER EVENT e1 ON SCHEDULE EVERY 1 DAY ENDS '2030-01-03 00:00:00' ++ALTER EVENT e1 ON SCHEDULE EVERY 1 DAY ENDS '2038-01-03 00:00:00' + ON COMPLETION PRESERVE DISABLE; + SHOW EVENTS; + +@@ -1033,7 +1033,7 @@ SET GLOBAL READ_ONLY = 1; + --echo + + --error ER_OPTION_PREVENTS_STATEMENT +-CREATE EVENT e1 ON SCHEDULE AT '2020-01-01 00:00:00' DO SET @a = 1; ++CREATE EVENT e1 ON SCHEDULE AT '2038-01-01 00:00:00' DO SET @a = 1; + + --echo + +@@ -1057,7 +1057,7 @@ DROP EVENT e1; + + --echo + +-CREATE EVENT e1 ON SCHEDULE AT '2020-01-01 00:00:00' DO SET @a = 1; ++CREATE EVENT e1 ON SCHEDULE AT '2038-01-01 00:00:00' DO SET @a = 1; + + --echo + diff --git a/community-mysql-arm32-timer.patch b/community-mysql-arm32-timer.patch index 44fc048..b5a4886 100644 --- a/community-mysql-arm32-timer.patch +++ b/community-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 c62deb3d..3ae57613 100644 +index 60bfdb0b..7e02101b 100644 --- a/mysql-test/include/mtr_warnings.sql +++ b/mysql-test/include/mtr_warnings.sql -@@ -265,6 +265,11 @@ INSERT INTO global_suppressions VALUES +@@ -273,6 +273,11 @@ INSERT INTO global_suppressions VALUES */ - ("The SSL library function CRYPTO_set_mem_functions failed"), + ("The transaction owned GTID is already in the gtid_executed table"), + /* + ARM32 don't support timers and get this warning in every test. diff --git a/community-mysql-paths.patch b/community-mysql-paths.patch index 8b1d9a7..d5978b6 100644 --- a/community-mysql-paths.patch +++ b/community-mysql-paths.patch @@ -4,10 +4,10 @@ Software Collections. Removing these hard-coded paths should fix it. Upstream report: https://mariadb.atlassian.net/browse/MDEV-6485 diff --git a/cmake/install_layout.cmake b/cmake/install_layout.cmake -index 94d9ecf5..69058c22 100644 +index 9f7945d8..6734cdfd 100644 --- a/cmake/install_layout.cmake +++ b/cmake/install_layout.cmake -@@ -109,7 +109,7 @@ IF(UNIX) +@@ -105,7 +105,7 @@ IF(UNIX) " Choose between ${VALID_INSTALL_LAYOUTS}" ) ENDIF() @@ -16,7 +16,7 @@ index 94d9ecf5..69058c22 100644 CACHE PATH "config directory (for my.cnf)") MARK_AS_ADVANCED(SYSCONFDIR) ENDIF() -@@ -271,6 +271,7 @@ SET(INSTALL_SECURE_FILE_PRIVDIR_TARGZ ${secure_file_priv_path}) +@@ -189,6 +189,7 @@ SET(INSTALL_SECURE_FILE_PRIVDIR_TARGZ ${secure_file_priv_path}) # SET(INSTALL_BINDIR_RPM "bin") SET(INSTALL_SBINDIR_RPM "sbin") @@ -25,10 +25,10 @@ index 94d9ecf5..69058c22 100644 IF(CMAKE_SYSTEM_PROCESSOR IN_LIST KNOWN_64BIT_ARCHITECTURES) SET(INSTALL_LIBDIR_RPM "lib64/mysql") diff --git a/mysys/my_default.cc b/mysys/my_default.cc -index a8f6132a..3b448ef3 100644 +index 290f1666..8403425f 100644 --- a/mysys/my_default.cc +++ b/mysys/my_default.cc -@@ -1565,12 +1565,12 @@ static const char **init_default_directories(MEM_ROOT *alloc) { +@@ -1570,12 +1570,12 @@ static const char **init_default_directories(MEM_ROOT *alloc) { #else @@ -45,7 +45,7 @@ index a8f6132a..3b448ef3 100644 #endif diff --git a/scripts/CMakeLists.txt b/scripts/CMakeLists.txt -index c64bfb52..1b2a76cf 100644 +index 4149a764..b091d5e2 100644 --- a/scripts/CMakeLists.txt +++ b/scripts/CMakeLists.txt @@ -288,9 +288,9 @@ IF(UNIX) @@ -60,10 +60,10 @@ index c64bfb52..1b2a76cf 100644 SET(datadir ${prefix}/${INSTALL_MYSQLSHAREDIR}) SET(libsubdir ${INSTALL_LIBDIR}) SET(pkgincludedir ${prefix}/${INSTALL_INCLUDEDIR}) -diff --git a/scripts/mysqld_multi.sh b/scripts/mysqld_multi.sh -index 8cd63ecc..21ad556c 100644 ---- a/scripts/mysqld_multi.sh -+++ b/scripts/mysqld_multi.sh +diff --git a/scripts/mysqld_multi.pl.in b/scripts/mysqld_multi.pl.in +index 84dd4d7c..50397ddd 100644 +--- a/scripts/mysqld_multi.pl.in ++++ b/scripts/mysqld_multi.pl.in @@ -586,9 +586,7 @@ sub list_defaults_files my %seen; # Don't list the same file more than once diff --git a/community-mysql-protobuf-3-11.patch b/community-mysql-protobuf-3-11.patch deleted file mode 100644 index ca7abce..0000000 --- a/community-mysql-protobuf-3-11.patch +++ /dev/null @@ -1,26 +0,0 @@ -Problem report: https://bugs.mysql.com/bug.php?id=97246 -Patch source: https://github.com/Homebrew/homebrew-core/pull/45383/commits/4b4dfa1c153a05f1fd4b83c2df741f2dc5f43237 - - -diff -urN a/plugin/x/client/mysqlxclient/xmessage.h b/plugin/x/client/mysqlxclient/xmessage.h ---- a/plugin/x/client/mysqlxclient/xmessage.h 2019-09-20 18:30:51.000000000 +1000 -+++ b/plugin/x/client/mysqlxclient/xmessage.h 2019-10-16 09:12:15.000000000 +1000 -@@ -36,7 +36,6 @@ - #include - #include - #include --#include - - #ifdef USE_MYSQLX_FULL_PROTO - -diff -urN a/plugin/x/ngs/include/ngs/protocol/protocol_protobuf.h b/plugin/x/ngs/include/ngs/protocol/protocol_protobuf.h ---- a/plugin/x/ngs/include/ngs/protocol/protocol_protobuf.h 2019-09-20 18:30:51.000000000 +1000 -+++ b/plugin/x/ngs/include/ngs/protocol/protocol_protobuf.h 2019-10-16 09:11:27.000000000 +1000 -@@ -38,7 +38,6 @@ - #include - #include - #include --#include - - #ifdef USE_MYSQLX_FULL_PROTO - #include "plugin/x/generated/protobuf/mysqlx.pb.h" diff --git a/community-mysql-scripts.patch b/community-mysql-scripts.patch index 0211d30..7c0a9f0 100644 --- a/community-mysql-scripts.patch +++ b/community-mysql-scripts.patch @@ -1,8 +1,8 @@ diff --git a/scripts/CMakeLists.txt b/scripts/CMakeLists.txt -index c64bfb52..4da9e699 100644 +index 8217bb76..4149a764 100644 --- a/scripts/CMakeLists.txt +++ b/scripts/CMakeLists.txt -@@ -523,6 +523,32 @@ ELSE() +@@ -513,4 +513,30 @@ ELSE() PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ ) ENDIF() @@ -33,5 +33,3 @@ index c64bfb52..4da9e699 100644 + ENDIF() + ENDFOREACH() ENDIF() - - # Install libgcc as mylibgcc.a diff --git a/community-mysql.spec b/community-mysql.spec index a54429d..1bfdbac 100644 --- a/community-mysql.spec +++ b/community-mysql.spec @@ -66,8 +66,8 @@ %global sameevr %{?epoch:%{epoch}:}%{version}-%{release} Name: community-mysql -Version: 8.0.18 -Release: 6%{?with_debug:.debug}%{?dist} +Version: 8.0.19 +Release: 1%{?with_debug:.debug}%{?dist} Summary: MySQL client programs and shared libraries URL: http://www.mysql.com @@ -105,9 +105,7 @@ Patch51: %{pkgnamepatch}-chain-certs.patch Patch52: %{pkgnamepatch}-sharedir.patch Patch55: %{pkgnamepatch}-rpath.patch Patch75: %{pkgnamepatch}-arm32-timer.patch - -# Patch to build against protobuf-3.11 -Patch76: %{pkgnamepatch}-protobuf-3-11.patch +Patch76: %{pkgnamepatch}-2020.patch # Patches taken from boost 1.59 Patch115: boost-1.58.0-pool.patch @@ -374,6 +372,10 @@ touch %{skiplist} add_test innodb.redo_log_archive_04 failed since 8.0.17 add_test clone.remote_dml_no_binlog failed since 8.0.17 +add_test x.message_protobuf_nested due to protobuf 3.11 +add_test x.message_compressed_payload due to protobuf 3.11 +add_test auth_sec.keyring_file_data_qa sporadic since 8.0.19 +add_test collations.chinese sporadic since 8.0.19 # These tests fail on armv7hl; last check 8.0.16 %ifarch %arm aarch64 @@ -384,11 +386,11 @@ add_test perfschema.func_file_io missing hw on arm32 add_test perfschema.func_mutex missing hw on arm32 add_test perfschema.global_read_lock missing hw on arm32 add_test perfschema.setup_objects missing hw on arm32 -# Failing in ~90% of times only on F30 -%if 0%{?fedora} == 30 +# Test added in 8.0.19 +add_test clone.remote_error_basic max_allowed_packet is 0 +# Failing in ~90% of times add_test innodb.create_tablespace %endif -%endif popd @@ -581,7 +583,7 @@ rm -r %{buildroot}%{_datadir}/%{pkg_name}/charsets %endif %if %{without errmsg} -rm %{buildroot}%{_datadir}/%{pkg_name}/errmsg-utf8.txt +rm %{buildroot}%{_datadir}/%{pkg_name}/{messages_to_error_log.txt,messages_to_clients.txt} rm -r %{buildroot}%{_datadir}/%{pkg_name}/{english,bulgarian,czech,danish,dutch,estonian,\ french,german,greek,hungarian,italian,japanese,korean,norwegian,norwegian-ny,\ polish,portuguese,romanian,russian,serbian,slovak,spanish,swedish,ukrainian} @@ -687,7 +689,8 @@ fi %if %{with errmsg} %files errmsg -%{_datadir}/%{pkg_name}/errmsg-utf8.txt +%{_datadir}/%{pkg_name}/messages_to_error_log.txt +%{_datadir}/%{pkg_name}/messages_to_clients.txt %{_datadir}/%{pkg_name}/english %lang(bg) %{_datadir}/%{pkg_name}/bulgarian %lang(cs) %{_datadir}/%{pkg_name}/czech @@ -802,10 +805,15 @@ fi %{_bindir}/mysqltest %{_bindir}/mysqltest_safe_process %{_bindir}/mysqlxtest +%{_bindir}/mysqld_safe +%{_bindir}/comp_err %attr(-,mysql,mysql) %{_datadir}/mysql-test %endif %changelog +* Thu Jan 02 2020 Lars Tangvald - 8.0.19-1 +- Update to MySQL 8.0.19 + * Thu Dec 19 2019 Adrian Reber - 8.0.18-6 - Include patch to build against protobuf 3.11 diff --git a/sources b/sources index 555f703..5111f6e 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (mysql-boost-8.0.18.tar.gz) = 180091ad3e74e2afa28ecb914850e6b4e8c92b8981f32b161f53381b92120d87dbd2c2fc073feb2543bb71702bac7368e9fb992821cfd3e3ca888019423b89f5 +SHA512 (mysql-boost-8.0.19.tar.gz) = 5ffc03f005ab2585694902e926b6cb2b10059b2b030549eccd3949f9c3b2f02626d02529f940dec003f2d69683856fd1c720ff12f89dfbdc48befaf24a9c4d01