[arch-commits] Commit in mariadb/trunk (PKGBUILD mariadb-10.0.18-MDEV-8115.patch)

Bartłomiej Piotrowski bpiotrowski at archlinux.org
Sat May 9 12:28:00 UTC 2015


    Date: Saturday, May 9, 2015 @ 14:28:00
  Author: bpiotrowski
Revision: 238753

upgpkg: mariadb 10.0.18-2

Backport patch to prevent possible mysqld crash when mysql_upgrade is used on
database with REPAIR VIEW.

Added:
  mariadb/trunk/mariadb-10.0.18-MDEV-8115.patch
Modified:
  mariadb/trunk/PKGBUILD

---------------------------------+
 PKGBUILD                        |   12 ++++---
 mariadb-10.0.18-MDEV-8115.patch |   61 ++++++++++++++++++++++++++++++++++++++
 2 files changed, 68 insertions(+), 5 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2015-05-09 07:54:42 UTC (rev 238752)
+++ PKGBUILD	2015-05-09 12:28:00 UTC (rev 238753)
@@ -5,7 +5,7 @@
 pkgname=('libmariadbclient' 'mariadb-clients' 'mytop' 'mariadb')
 pkgver=10.0.18
 _pkgver=${pkgver/.a/a}
-pkgrel=1
+pkgrel=2
 arch=('i686' 'x86_64')
 license=('GPL')
 url='http://mariadb.org/'
@@ -14,15 +14,17 @@
 source=(https://downloads.mariadb.org/interstitial/mariadb-$pkgver/source/mariadb-$pkgver.tar.gz
         mariadb.service
         mariadb-post.sh
-        mariadb-tmpfile.conf)
+        mariadb-tmpfile.conf
+        mariadb-10.0.18-MDEV-8115.patch)
 md5sums=('eab4f9303883d33558c0059af9e30aa4'
          'd488fffa9f62f9949c4aa1bb6e6db692'
          'b79e65a5aa536e6b5bc60988eb0b78a2'
-         '2fa6e456964d4ff5e6d4f9ff0126aed6')
+         '2fa6e456964d4ff5e6d4f9ff0126aed6'
+         '4be445c305df3cca61aa9a40a1886964')
 
 prepare() {
-  sed -i 's/_SVID_SOURCE/_DEFAULT_SOURCE/' \
-    $pkgbase-$pkgver/storage/tokudb/ft-index/cmake_modules/TokuSetupCompiler.cmake
+  cd $pkgbase-$pkgver
+  patch -p1 -i ../mariadb-10.0.18-MDEV-8115.patch
 }
 
 build() {

Added: mariadb-10.0.18-MDEV-8115.patch
===================================================================
--- mariadb-10.0.18-MDEV-8115.patch	                        (rev 0)
+++ mariadb-10.0.18-MDEV-8115.patch	2015-05-09 12:28:00 UTC (rev 238753)
@@ -0,0 +1,61 @@
+From 0014bdc7eef141dcd66930e853242b3be4960831 Mon Sep 17 00:00:00 2001
+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)
+       {



More information about the arch-commits mailing list