extra/mariadb to 10.0.19-1

This commit is contained in:
Kevin Mihelich 2015-06-06 20:35:31 +00:00
parent 3a3aef39b7
commit e930b44813
3 changed files with 10 additions and 76 deletions

View file

@ -6,29 +6,22 @@
pkgbase=mariadb
pkgname=('libmariadbclient' 'mariadb-clients' 'mytop' 'mariadb')
pkgver=10.0.18
pkgver=10.0.19
_pkgver=${pkgver/.a/a}
pkgrel=2
pkgrel=1
arch=('i686' 'x86_64')
license=('GPL')
url='http://mariadb.org/'
makedepends=('cmake' 'openssl' 'zlib' 'libaio' 'libxml2' 'openssl' 'pcre'
'jemalloc' 'lz4')
source=(https://downloads.mariadb.org/interstitial/mariadb-$pkgver/source/mariadb-$pkgver.tar.gz
source=(http://mariadb.kisiek.net/mariadb-$pkgver/source/mariadb-$pkgver.tar.gz
mariadb.service
mariadb-post.sh
mariadb-tmpfile.conf
mariadb-10.0.18-MDEV-8115.patch)
md5sums=('eab4f9303883d33558c0059af9e30aa4'
mariadb-tmpfile.conf)
md5sums=('aeaf101c688515dc8f73a5250e6c1df9'
'd488fffa9f62f9949c4aa1bb6e6db692'
'b79e65a5aa536e6b5bc60988eb0b78a2'
'2fa6e456964d4ff5e6d4f9ff0126aed6'
'4be445c305df3cca61aa9a40a1886964')
prepare() {
cd $pkgbase-$pkgver
patch -p1 -i ../mariadb-10.0.18-MDEV-8115.patch
}
'2fa6e456964d4ff5e6d4f9ff0126aed6')
build() {
mkdir build

View file

@ -1,61 +0,0 @@
From 0014bdc7eef141dcd66930e853242b3be4960831 Mon Sep 17 00:00:00 2001
From: Sergei Golubchik <serg@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)
{

View file

@ -1,12 +1,14 @@
post_install(){
groupadd -g 89 mysql &>/dev/null
useradd -u 89 -g mysql -d /var/lib/mysql -s /bin/false mysql &>/dev/null
useradd -u 89 -g 89 -d /var/lib/mysql -s /bin/false mysql &>/dev/null
echo ":: You need to initialize the MariaDB data directory prior to starting"
echo " the service. This can be done with mysql_install_db command, e.g.:"
echo " mysql_install_db --user=mysql --basedir=/usr --datadir=/var/lib/mysql"
usr/bin/systemd-tmpfiles --create mysql.conf
if hash systemd-tmpfiles &> /dev/null; then
systemd-tmpfiles --create mysql.conf
fi
}
post_upgrade(){