[Pkg-mysql-commits] [mariadb-5.5] 01/01: Hotfix patch to fix the server crash caused by mysql_upgrade (MDEV-8115)

Otto Kekäläinen ottok-guest at moszumanska.debian.org
Sat May 9 21:10:32 UTC 2015


This is an automated email from the git hooks/post-receive script.

ottok-guest pushed a commit to branch ubuntu-14.04
in repository mariadb-5.5.

commit f4877dd8db1cf5ac694a46cdb4f266e1f15a57ac
Author: Otto Kekäläinen <otto at seravo.fi>
Date:   Sat May 9 23:42:40 2015 +0300

    Hotfix patch to fix the server crash caused by mysql_upgrade (MDEV-8115)
    
    Conflicts:
    
    	debian/changelog
---
 debian/changelog                                |  1 +
 debian/patches/10_mysql_upgrade_crash_fix.patch | 61 +++++++++++++++++++++++++
 debian/patches/series                           |  1 +
 3 files changed, 63 insertions(+)

diff --git a/debian/changelog b/debian/changelog
index 44c09a5..b8657b6 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -5,6 +5,7 @@ mariadb-5.5 (5.5.43-1ubuntu0.14.04.2) trusty-security; urgency=low
     - CVE-2015-2571
     - CVE-2015-0505
     - CVE-2015-0499
+  * Hotfix patch to fix the server crash caused by mysql_upgrade (MDEV-8115)
 
  -- Otto Kekäläinen <otto at seravo.fi>  Tue, 05 May 2015 09:17:31 +0300
 
diff --git a/debian/patches/10_mysql_upgrade_crash_fix.patch b/debian/patches/10_mysql_upgrade_crash_fix.patch
new file mode 100644
index 0000000..7a0c34e
--- /dev/null
+++ b/debian/patches/10_mysql_upgrade_crash_fix.patch
@@ -0,0 +1,61 @@
+From https://github.com/MariaDB/server/commit/0014bdc7.patch
+From: Sergei Golubchik <serg at mariadb.org>
+Date: Thu, 7 May 2015 22:18:34 +0200
+Subject: [PATCH] MDEV-8115 mysql_upgrade crashes the server with REPAIR VIEW
+
+on REPAIR don't do table-specific stuff for views
+(because even if the view has a temp table opened for it,
+it's not opened all the way down the engine. In particular,
+Aria crashes in maria_status() because MARIA_HA* info - that is
+table->table->file->file - is NULL)
+---
+ mysql-test/r/repair.result | 7 +++++++
+ mysql-test/t/repair.test   | 9 +++++++++
+ sql/sql_admin.cc           | 2 +-
+ 3 files changed, 17 insertions(+), 1 deletion(-)
+
+diff --git a/mysql-test/r/repair.result b/mysql-test/r/repair.result
+index 52ae9c3..51c3374 100644
+--- a/mysql-test/r/repair.result
++++ b/mysql-test/r/repair.result
+@@ -207,3 +207,10 @@ check table t1;
+ Table	Op	Msg_type	Msg_text
+ test.t1	check	status	OK
+ drop table t1;
++create table t1 (a blob);
++create view v1 as select * from t1;
++repair view v1;
++Table	Op	Msg_type	Msg_text
++test.v1	repair	status	OK
++drop view v1;
++drop table t1;
+diff --git a/mysql-test/t/repair.test b/mysql-test/t/repair.test
+index 337b73f..f625965 100644
+--- a/mysql-test/t/repair.test
++++ b/mysql-test/t/repair.test
+@@ -208,3 +208,12 @@ repair table t1 use_frm;
+ select count(*) from t1;
+ check table t1;
+ drop table t1;
++
++#
++# MDEV-8115 mysql_upgrade crashes the server with REPAIR VIEW
++#
++create table t1 (a blob);
++create view v1 as select * from t1;
++repair view v1;
++drop view v1;
++drop table t1;
+diff --git a/sql/sql_admin.cc b/sql/sql_admin.cc
+index 44057b6..9827c67 100644
+--- a/sql/sql_admin.cc
++++ b/sql/sql_admin.cc
+@@ -901,7 +901,7 @@ static bool mysql_admin_table(THD* thd, TABLE_LIST* tables,
+         break;
+       }
+     }
+-    if (table->table)
++    if (table->table && !table->view)
+     {
+       if (table->table->s->tmp_table)
+       {
diff --git a/debian/patches/series b/debian/patches/series
index 479a9ca..8173b30 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,3 +1,4 @@
+10_mysql_upgrade_crash_fix.patch
 33_scripts__mysql_create_system_tables__no_test.diff
 38_scripts__mysqld_safe.sh__signals.diff
 41_scripts__mysql_install_db.sh__no_test.diff

-- 
Alioth's hooks/post-receive on /srv/git.debian.org/git/pkg-mysql/mariadb-5.5.git



More information about the Pkg-mysql-commits mailing list