Rebase to 8.0.13

ICU patch removed; upstreamed
Patch for MySQL Router introduced. Do not build it.
CVEs fixed:
  CVE-2018-3276 CVE-2018-3200 CVE-2018-3137 CVE-2018-3284 CVE-2018-3195
  CVE-2018-3173 CVE-2018-3212 CVE-2018-3279 CVE-2018-3162 CVE-2018-3247
  CVE-2018-3156 CVE-2018-3161 CVE-2018-3278 CVE-2018-3174 CVE-2018-3282
  CVE-2018-3285 CVE-2018-3187 CVE-2018-3277 CVE-2018-3144 CVE-2018-3145
  CVE-2018-3170 CVE-2018-3186 CVE-2018-3182 CVE-2018-3133 CVE-2018-3143
  CVE-2018-3283 CVE-2018-3171 CVE-2018-3251 CVE-2018-3286 CVE-2018-3185
  CVE-2018-3280 CVE-2018-3203 CVE-2018-3155
This commit is contained in:
Michal Schorm 2018-10-23 16:35:29 +02:00
parent f4c1cfdc23
commit ffd96fa910
6 changed files with 100 additions and 107 deletions

View File

@ -1,8 +1,8 @@
--- mysql-8.0.4-rc/mysql-test/include/mtr_warnings.sql~ 2018-01-18 16:52:52.000000000 +0100
+++ mysql-8.0.4-rc/mysql-test/include/mtr_warnings.sql 2018-03-08 20:14:48.537507245 +0100
@@ -311,6 +311,11 @@
("The member has resumed contact with a majority of the members in the group.*"),
("Members removed from the group.*"),
*/
("The SSL library function CRYPTO_set_mem_functions failed"),
+ /*
+ ARM32 don't support timers and get this warning in every test.

View File

@ -1,13 +0,0 @@
diff --git a/plugin/x/src/xpl_regex.cc b/plugin/x/src/xpl_regex.cc
index eefb14d78b7..a77a807459c 100644
--- a/plugin/x/src/xpl_regex.cc
+++ b/plugin/x/src/xpl_regex.cc
@@ -53,7 +53,7 @@ bool xpl::Regex::match(const char *value) const {
* and parse the text patter each time that xpl::Regex::match
* is called.
*/
- UnicodeString value_as_utf8{icu::UnicodeString::fromUTF8(value)};
+ icu::UnicodeString value_as_utf8{icu::UnicodeString::fromUTF8(value)};
std::unique_ptr<icu::RegexMatcher> regexp{
m_pattern->matcher(value_as_utf8, match_status)};

View File

@ -0,0 +1,17 @@
Do not build MySQL Router.
It is a set of tools and libraries used for the InnoDB cluster.
However without MySQL SHELL it can't be operated.
We don't pack the MySQL SHELL, so don´t build the router at all.
--- mysql-8.0.13/CMakeLists.txt 2018-10-07 10:44:22.000000000 +0200
+++ mysql-8.0.13/CMakeLists.txt_patched 2018-10-23 03:10:01.490792624 +0200
@@ -1046,7 +1046,7 @@ CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/sql/s
# depends on mysql_version.h to exist
IF(NOT WITHOUT_SERVER)
- ADD_SUBDIRECTORY(router)
+# ADD_SUBDIRECTORY(router)
ENDIF()
GET_PROPERTY(CWD_DEFINITIONS DIRECTORY PROPERTY COMPILE_DEFINITIONS)

View File

@ -26,16 +26,8 @@ index 8c058527..7acd8534 100755
my $path_share = $path_language;
@share_locations =
- ("share/mysql", "share/mysql-" . $mysql_base_version, "share");
+ ("@INSTALL_MYSQLSHAREDIR@", "share/mysql", "share/mysql-" . $mysql_base_version, "share");
- ("share/mysql-" . $mysql_base_version, "share/mysql", "share");
+ ("@INSTALL_MYSQLSHAREDIR@", "share/mysql-" . $mysql_base_version, "share/mysql", "share");
$path_charsetsdir = my_find_dir($basedir, \@share_locations, "charsets");
@@ -3727,6 +3727,7 @@ sub mysql_install_db {
my $path_sql = my_find_file($install_basedir,
[ "mysql", "share/mysql",
+ "@INSTALL_MYSQLSHAREDIR@",
"share/mysql-" . $mysql_base_version,
"share", "scripts"
],

View File

@ -5,7 +5,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 0}
%{!?runselftest:%global runselftest 1}
# Set this to 1 to see which tests fail
%global check_testsuite 0
@ -79,8 +79,8 @@
%global sameevr %{?epoch:%{epoch}:}%{version}-%{release}
Name: community-mysql
Version: 8.0.12
Release: 2%{?with_debug:.debug}%{?dist}
Version: 8.0.13
Release: 1%{?with_debug:.debug}%{?dist}
Summary: MySQL client programs and shared libraries
URL: http://www.mysql.com
@ -115,11 +115,11 @@ Patch2: %{pkgnamepatch}-s390-tsc.patch
Patch3: %{pkgnamepatch}-file-contents.patch
Patch4: %{pkgnamepatch}-scripts.patch
Patch5: %{pkgnamepatch}-paths.patch
Patch6: %{pkgnamepatch}-icu.patch
# Patches specific for this mysql package
Patch51: %{pkgnamepatch}-chain-certs.patch
Patch52: %{pkgnamepatch}-sharedir.patch
Patch53: %{pkgnamepatch}-router.patch
Patch75: %{pkgnamepatch}-arm32-timer.patch
# Patches taken from boost 1.59
@ -135,6 +135,7 @@ BuildRequires: libicu-devel
BuildRequires: lz4
BuildRequires: lz4-devel
BuildRequires: mecab-devel
BuildRequires: bison
%ifnarch aarch64 %{arm} s390 s390x
BuildRequires: numactl-devel
%endif
@ -364,9 +365,9 @@ the MySQL sources.
%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch6 -p1
%patch51 -p1
%patch52 -p1
%patch53 -p1
%patch75 -p1
# Patch Boost
@ -384,47 +385,43 @@ add_test () {
touch %{skiplist}
# fails everywhere
add_test gis.srs : 8.0 issue
add_test main.import : 8.0 issue
add_test main.no_binlog_related_options : 8.0 issue
add_test main.regular_expressions_func_icu_54 : 8.0 issue
add_test main.regular_expressions_utf-8_icu_58 : 8.0 issue
add_test main.regular_expressions_utf-8 : 8.0 issue
add_test main.regular_expressions_utf-8_icu_59 : 8.0 issue
add_test perfschema.histograms : 8.0 issue
add_test main.log_options_cmdline : 8.0 issue
# Fails everywhere
add_test auth_sec.cert_verify :
add_test auth_sec.mysql_ssl_connection :
add_test auth_sec.openssl_cert_generation :
add_test auth_sec.openssl_without_fips :
add_test auth_sec.ssl_auto_detect :
add_test auth_sec.ssl_mode :
add_test auth_sec.tls :
add_test binlog.binlog_grant_alter_user :
add_test innodb.create_tablespace :
add_test main.grant_alter_user_qa :
add_test main.grant_user_lock_qa :
add_test main.mysql_ssl_default :
add_test main.openssl_1 :
add_test main.persisted_variables_bugs :
add_test main.plugin_auth_sha256_tls :
add_test main.read_only_persisted_plugin_variables :
add_test main.ssl :
add_test main.ssl_ca :
add_test main.ssl_cipher :
add_test main.ssl_compress :
add_test main.ssl_crl :
add_test main.ssl_verify_identity :
add_test main.ssl_8k_key :
add_test x.connection_openssl :
add_test x.connection_openssl_unixsocket :
add_test x.connection_tls_version :
add_test x.mysqlxtest_mode_ssl :
add_test x.mysqlxtest_mode_ssl_unixsocket :
# Fails since 8.0
add_test x.crud_insert_cast :
add_test x.insert_table :
add_test x.insert_table_bad_column :
add_test x.insert_table_bad_column_type :
add_test x.insert_table_bad_numcolumns :
add_test x.update_crud_arrayappend_o :
add_test x.update_crud_arrayinsert_o :
add_test innodb.innodb : missing correct value
add_test innodb.innodb_cats :
add_test innodb.log_corruption :
add_test main.dd_upgrade_test :
add_test main.disabled_replication :
add_test main.flush2 :
add_test main.import :
add_test main.mysqldump-no-binlog :
add_test main.skip_log_bin :
add_test main.window_functions_explain :
add_test rpl_gtid.rpl_gtid_perfschema_applier_xa_status :
add_test gis.gis_bugs_crashes :
add_test perfschema.histograms :
add_test main.log_options_cmdline :
# these tests fail on arm32
%ifarch %arm
# FTS; still apply for 5.7.21
add_test innodb_fts.opt : arm32 FTS issue
# these tests fail on arm
%ifarch %arm aarch64
add_test innodb.log_corruption :
add_test innodb.innodb-wl6445-2 :
add_test gis.st_latitude :
add_test gis.st_longitude :
add_test main.log_options_cmdline:
# Missing hw counters; in 5.7.21 reported as unstable tests
add_test perfschema.func_file_io : missing hw on arm32
add_test perfschema.setup_objects : missing hw on arm32
@ -432,35 +429,28 @@ add_test perfschema.global_read_lock : missing hw on arm32
add_test perfschema.func_mutex : missing hw on arm32
%endif
# these tests fail on aarch64
%ifarch aarch64
add_test import_5_7 : 8.0 issue/aarch64
add_test sdi : 8.0 issue/aarch64
add_test dd_upgrade_partition : 8.0 issue/aarch64
%endif
# This test fail on ppc64 and ppc64le; applicable in 5.7.21
%ifarch ppc64le
add_test main.histograms : 8.0 issue/ppc64le
add_test main.opt_costmodel : 8.0 issue/ppc64le
add_test innodb.temporary_table_optimization : 8.0 issue/ppc64le
add_test perfschema.memory_aggregate_no_a : incorrect numbers in output
add_test innodb_zip.wl6469 :
add_test json.json_functions_innodb :
add_test main.ps :
add_test main.select_all :
add_test main.select_all_bka :
add_test main.select_all_bka_nixbnl :
add_test main.select_icp_mrr :
add_test main.select_icp_mrr_bka :
add_test main.select_icp_mrr_bka_nixbnl :
add_test main.select_none :
add_test main.select_none_bka :
add_test main.select_none_bka_nixbnl :
add_test main.sp :
add_test main.type_float :
add_test main.type_newdecimal :
add_test main.type_ranges :
add_test innodb.create_tablespace :
add_test innodb.instant_add_column_basic :
add_test innodb.temporary_table_optimization :
add_test json.json_functions_innodb :
add_test main.histograms :
add_test main.opt_costmodel :
add_test main.ps :
add_test main.select_all :
add_test main.select_all_bka :
add_test main.select_all_bka_nixbnl :
add_test main.select_icp_mrr :
add_test main.select_icp_mrr_bka :
add_test main.select_icp_mrr_bka_nixbnl :
add_test main.select_none :
add_test main.select_none_bka :
add_test main.select_none_bka_nixbnl :
add_test main.sp :
add_test main.type_float :
add_test main.type_newdecimal :
add_test main.type_ranges :
add_test test_service_sql_api.test_sql_all_col_types :
%endif
@ -534,6 +524,8 @@ cmake .. \
-DTMPDIR=/var/tmp \
%{?_hardened_build:-DWITH_MYSQLD_LDFLAGS="-pie -Wl,-z,relro,-z,now"}
cmake .. -LAH
make %{?_smp_mflags} VERBOSE=1
popd
@ -898,15 +890,7 @@ fi
%{_mandir}/man8/mysqld.8*
%{_datadir}/%{pkg_name}/dictionary.txt
%{_datadir}/%{pkg_name}/fill_help_tables.sql
%{_datadir}/%{pkg_name}/innodb_memcached_config.sql
%{_datadir}/%{pkg_name}/install_rewriter.sql
%{_datadir}/%{pkg_name}/mysql_sys_schema.sql
%{_datadir}/%{pkg_name}/mysql_system_tables.sql
%{_datadir}/%{pkg_name}/mysql_system_tables_data.sql
%{_datadir}/%{pkg_name}/mysql_system_users.sql
%{_datadir}/%{pkg_name}/mysql_test_data_timezone.sql
%{_datadir}/%{pkg_name}/uninstall_rewriter.sql
%{_datadir}/%{pkg_name}/*.sql
%{daemondir}/%{daemon_name}*
%{_libexecdir}/mysql-prepare-db-dir
@ -950,6 +934,19 @@ fi
%endif
%changelog
* Tue Oct 23 2018 Michal Schorm <mschorm@redhat.com> - 8.0.13-1
- Rebase to 8.0.13
- ICU patch removed; upstreamed
- Patch for MySQL Router introduced. Do not build it.
- CVEs fixed:
CVE-2018-3276 CVE-2018-3200 CVE-2018-3137 CVE-2018-3284 CVE-2018-3195
CVE-2018-3173 CVE-2018-3212 CVE-2018-3279 CVE-2018-3162 CVE-2018-3247
CVE-2018-3156 CVE-2018-3161 CVE-2018-3278 CVE-2018-3174 CVE-2018-3282
CVE-2018-3285 CVE-2018-3187 CVE-2018-3277 CVE-2018-3144 CVE-2018-3145
CVE-2018-3170 CVE-2018-3186 CVE-2018-3182 CVE-2018-3133 CVE-2018-3143
CVE-2018-3283 CVE-2018-3171 CVE-2018-3251 CVE-2018-3286 CVE-2018-3185
CVE-2018-3280 CVE-2018-3203 CVE-2018-3155
* Thu Sep 06 2018 Michal Schorm <mschorm@redhat.com> - 8.0.12-2
- Fix the SYS_NICE capabilities
Related: #1540946

View File

@ -1 +1 @@
SHA512 (mysql-boost-8.0.12.tar.gz) = 68aeb0bb69f7087e0c308fe735f67dd973a6a2282b4027f9e20bed5e179f48e073d116542ae0dce80de7538e62247bd893ed2eb13371188e1b5019ff74c4b9ad
SHA512 (mysql-boost-8.0.13.tar.gz) = 3452ee09f3c1217bd86137fc415ea67140a81c22ca208e8edf1f9f6b6ad05fd99251ae8ad6283a3bdf316633d8969331e716bc566a8ff138d81ddb575da269fe