From 49edf57505c8faa1891c0648c84e43b7be2d0f35 Mon Sep 17 00:00:00 2001 From: Johnny Hughes Date: Jul 02 2019 15:13:27 +0000 Subject: import mariadb-10.3.11-1.module+el8+2765+cfa4f87b --- diff --git a/SOURCES/rhbz_1686818.patch b/SOURCES/rhbz_1686818.patch deleted file mode 100644 index 8b55754..0000000 --- a/SOURCES/rhbz_1686818.patch +++ /dev/null @@ -1,114 +0,0 @@ -Patch for https://bugzilla.redhat.com/show_bug.cgi?id=1686818 -Picked from https://github.com/MariaDB/server/commit/802ce9672f - -Fixed by rebase to 10.3.12 - ---- mariadb-10.3.11/storage/innobase/handler/handler0alter.cc 2018-11-16 19:04:53.000000000 +0100 -+++ mariadb-10.3.11/storage/innobase/handler/handler0alter.cc_patched 2019-03-13 11:52:15.752268825 +0100 -@@ -7712,36 +7712,40 @@ err_exit: - index != NULL; - index = dict_table_get_next_index(index)) { - -+ bool has_prefixes = false; -+ for (size_t i = 0; i < dict_index_get_n_fields(index); i++) { -+ if (dict_index_get_nth_field(index, i)->prefix_len) { -+ has_prefixes = true; -+ break; -+ } -+ } -+ - for (ulint i = 0; i < dict_index_get_n_fields(index); i++) { -- if (my_strcasecmp( -- system_charset_info, -- dict_index_get_nth_field(index, i)->name, -- from)) { -+ const dict_field_t* field -+ = dict_index_get_nth_field(index, i); -+ if (my_strcasecmp(system_charset_info, field->name, -+ from)) { - continue; - } - - info = pars_info_create(); - -+ int pos = i; -+ if (has_prefixes) { -+ pos = (pos << 16) + field->prefix_len; -+ } -+ - pars_info_add_ull_literal(info, "indexid", index->id); -- pars_info_add_int4_literal(info, "nth", i); -+ pars_info_add_int4_literal(info, "nth", pos); - pars_info_add_str_literal(info, "new", to); - - error = que_eval_sql( - info, - "PROCEDURE RENAME_SYS_FIELDS_PROC () IS\n" - "BEGIN\n" -- - "UPDATE SYS_FIELDS SET COL_NAME=:new\n" - "WHERE INDEX_ID=:indexid\n" - "AND POS=:nth;\n" -- -- /* Try again, in case there is a prefix_len -- encoded in SYS_FIELDS.POS */ -- -- "UPDATE SYS_FIELDS SET COL_NAME=:new\n" -- "WHERE INDEX_ID=:indexid\n" -- "AND POS>=65536*:nth AND POS<65536*(:nth+1);\n" -- - "END;\n", - FALSE, trx); - ---- mariadb-10.3.11/mysql-test/suite/innodb/r/innodb-alter.result 2018-11-16 19:04:50.000000000 +0100 -+++ mariadb-10.3.11/mysql-test/suite/innodb/r/innodb-alter.result_patched 2019-03-13 12:06:48.788107502 +0100 -@@ -879,6 +879,27 @@ NAME - a - b - DROP TABLE t1; -+# and an MDEV-18041 regression related to indexes prefixes -+create table `test` ( -+`test_old` varchar(255) NOT NULL, -+`other` varchar(255) NOT NULL, -+PRIMARY KEY (`test_old`,`other`), -+UNIQUE KEY uk (`test_old`(100), `other`) -+) ENGINE=InnoDB; -+select name, pos from information_schema.innodb_SYS_FIELDS where name in ('test_old', 'other', 'test_new'); -+name pos -+test_old 0 -+other 1 -+test_old 0 -+other 1 -+alter table `test` CHANGE COLUMN `test_old` `test_new` varchar(255) NOT NULL; -+select name, pos from information_schema.innodb_SYS_FIELDS where name in ('test_old', 'other', 'test_new'); -+name pos -+test_new 0 -+other 1 -+test_new 0 -+other 1 -+drop table `test`; - # - # BUG 20029625 - HANDLE_FATAL_SIGNAL (SIG=11) IN - # DICT_MEM_TABLE_COL_RENAME_LOW ---- mariadb-10.3.11/mysql-test/suite/innodb/t/innodb-alter.test 2018-11-16 19:04:50.000000000 +0100 -+++ mariadb-10.3.11/mysql-test/suite/innodb/t/innodb-alter.test_patched 2019-03-13 12:08:36.398847184 +0100 -@@ -545,6 +545,19 @@ SELECT C.NAME FROM INFORMATION_SCHEMA.IN - WHERE T.NAME='test/t1'; - DROP TABLE t1; - -+--echo # and an MDEV-18041 regression related to indexes prefixes -+create table `test` ( -+ `test_old` varchar(255) NOT NULL, -+ `other` varchar(255) NOT NULL, -+ PRIMARY KEY (`test_old`,`other`), -+ UNIQUE KEY uk (`test_old`(100), `other`) -+) ENGINE=InnoDB; -+ -+select name, pos from information_schema.innodb_SYS_FIELDS where name in ('test_old', 'other', 'test_new'); -+alter table `test` CHANGE COLUMN `test_old` `test_new` varchar(255) NOT NULL; -+select name, pos from information_schema.innodb_SYS_FIELDS where name in ('test_old', 'other', 'test_new'); -+drop table `test`; -+ - - --echo # - --echo # BUG 20029625 - HANDLE_FATAL_SIGNAL (SIG=11) IN diff --git a/SPECS/mariadb.spec b/SPECS/mariadb.spec index a544207..d59bb6c 100644 --- a/SPECS/mariadb.spec +++ b/SPECS/mariadb.spec @@ -149,7 +149,7 @@ Name: mariadb Version: 10.3.11 -Release: 2%{?with_debug:.debug}%{?dist} +Release: 1%{?with_debug:.debug}%{?dist} Epoch: 3 Summary: A very fast and robust SQL database server @@ -185,10 +185,8 @@ Source72: mariadb-server-galera.te # https://github.com/dciabrin/wsrep_sst_rsync_tunnel/blob/master/wsrep_sst_rsync_tunnel Source73: wsrep_sst_rsync_tunnel -# Patch1: Fix python shebang to specificaly say the python version +# Patch1: Fix python shebang to specificaly say the python version Patch1: %{pkgnamepatch}-shebang.patch -# Patch2: rhbz#1686818 -Patch2: rhbz_1686818.patch # Patch4: Red Hat distributions specific logrotate fix # it would be big unexpected change, if we start shipping it now. Better wait for MariaDB 10.2 Patch4: %{pkgnamepatch}-logrotate.patch @@ -696,7 +694,6 @@ sources. find . -name "*.jar" -type f -exec rm --verbose -f {} \; %patch1 -p1 -%patch2 -p1 %patch4 -p1 %patch7 -p1 %patch9 -p1 @@ -1589,10 +1586,6 @@ fi %endif %changelog -* Wed Mar 13 2019 Michal Schorm - 3:10.3.11-2 -- Added patch for rhbz#1686818 - Resolves: #1686818 - * Mon Dec 10 2018 Michal Schorm - 3:10.3.11-1 - Rebase to 10.3.11 - Remove README.mysql-cnf as we don't ship example configuration files anymore