mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2024-11-08 22:45:43 +00:00
extra/mariadb to 10.3.14-1
This commit is contained in:
parent
a46fed121e
commit
52100663ef
4 changed files with 3 additions and 157 deletions
|
@ -1,21 +0,0 @@
|
|||
From 82da98556cf58f0fbb43c82e9c6ae1a887b6cf3d Mon Sep 17 00:00:00 2001
|
||||
From: Oleksandr Byelkin <sanja@mariadb.com>
|
||||
Date: Mon, 25 Feb 2019 15:57:08 +0100
|
||||
Subject: [PATCH 2/2] MDEV-18605: Loss of column aliases by using view and
|
||||
group
|
||||
|
||||
Preserv column name with copy fields even if it is function and Co.
|
||||
diff --git a/sql/sql_select.cc b/sql/sql_select.cc
|
||||
index 439853c2f66..0bc27f18d47 100644
|
||||
--- a/sql/sql_select.cc
|
||||
+++ b/sql/sql_select.cc
|
||||
@@ -23914,7 +23914,9 @@ setup_copy_fields(THD *thd, TMP_TABLE_PARAM *param,
|
||||
real_pos->type() == Item::COND_ITEM) &&
|
||||
!real_pos->with_sum_func)
|
||||
{ // Save for send fields
|
||||
+ LEX_CSTRING real_name= pos->name;
|
||||
pos= real_pos;
|
||||
+ pos->name= real_name;
|
||||
/* TODO:
|
||||
In most cases this result will be sent to the user.
|
||||
This should be changed to use copy_int or copy_real depending
|
|
@ -1,121 +0,0 @@
|
|||
commit e73060b6c9b3655cadcd34c66fc7811d214c1673
|
||||
Author: Jan Lindström <jan.lindstrom@mariadb.com>
|
||||
Date: Tue Mar 12 15:44:10 2019 +0200
|
||||
|
||||
MDEV-18577: Indexes problem on import dump SQL
|
||||
|
||||
Problem was that we skipped background persistent statistics calculation
|
||||
on applier nodes if thread is marked as high priority (a.k.a BF).
|
||||
However, on applier nodes all DDL which is replicate will be executed
|
||||
as high priority i.e BF.
|
||||
|
||||
Fixed by allowing background persistent statistics calculation on
|
||||
applier nodes even when thread is marked as BF. This could lead
|
||||
BF lock waits but for queries on that node needs that statistics.
|
||||
|
||||
diff --git a/include/mysql/service_wsrep.h b/include/mysql/service_wsrep.h
|
||||
index 267c8cb4e90..ee28856ac73 100644
|
||||
--- a/include/mysql/service_wsrep.h
|
||||
+++ b/include/mysql/service_wsrep.h
|
||||
@@ -112,6 +112,7 @@ extern struct wsrep_service_st {
|
||||
int (*wsrep_trx_order_before_func)(MYSQL_THD, MYSQL_THD);
|
||||
void (*wsrep_unlock_rollback_func)();
|
||||
void (*wsrep_set_data_home_dir_func)(const char *data_dir);
|
||||
+ my_bool (*wsrep_thd_is_applier_func)(MYSQL_THD);
|
||||
} *wsrep_service;
|
||||
|
||||
#ifdef MYSQL_DYNAMIC_PLUGIN
|
||||
@@ -155,6 +156,7 @@ extern struct wsrep_service_st {
|
||||
#define wsrep_trx_order_before(T1,T2) wsrep_service->wsrep_trx_order_before_func(T1,T2)
|
||||
#define wsrep_unlock_rollback() wsrep_service->wsrep_unlock_rollback_func()
|
||||
#define wsrep_set_data_home_dir(A) wsrep_service->wsrep_set_data_home_dir_func(A)
|
||||
+#define wsrep_thd_is_applier(T) wsrep_service->wsrep_thd_is_applier(T)
|
||||
|
||||
#define wsrep_debug get_wsrep_debug()
|
||||
#define wsrep_log_conflicts get_wsrep_log_conflicts()
|
||||
@@ -214,7 +216,7 @@ void wsrep_thd_set_conflict_state(THD *thd, enum wsrep_conflict_state state);
|
||||
bool wsrep_thd_ignore_table(THD *thd);
|
||||
void wsrep_unlock_rollback();
|
||||
void wsrep_set_data_home_dir(const char *data_dir);
|
||||
-
|
||||
+my_bool wsrep_thd_is_applier(MYSQL_THD thd);
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
diff --git a/sql/sql_plugin_services.ic b/sql/sql_plugin_services.ic
|
||||
index 7fb5524016a..3d6cf0a0723 100644
|
||||
--- a/sql/sql_plugin_services.ic
|
||||
+++ b/sql/sql_plugin_services.ic
|
||||
@@ -181,7 +181,8 @@ static struct wsrep_service_st wsrep_handler = {
|
||||
wsrep_trx_is_aborting,
|
||||
wsrep_trx_order_before,
|
||||
wsrep_unlock_rollback,
|
||||
- wsrep_set_data_home_dir
|
||||
+ wsrep_set_data_home_dir,
|
||||
+ wsrep_thd_is_applier
|
||||
};
|
||||
|
||||
static struct thd_specifics_service_st thd_specifics_handler=
|
||||
diff --git a/sql/wsrep_dummy.cc b/sql/wsrep_dummy.cc
|
||||
index 795e2d19252..7297dbfe0fd 100644
|
||||
--- a/sql/wsrep_dummy.cc
|
||||
+++ b/sql/wsrep_dummy.cc
|
||||
@@ -141,3 +141,6 @@ void wsrep_unlock_rollback()
|
||||
|
||||
void wsrep_set_data_home_dir(const char *)
|
||||
{ }
|
||||
+
|
||||
+my_bool wsrep_thd_is_applier(MYSQL_THD thd)
|
||||
+{ return false; }
|
||||
diff --git a/sql/wsrep_thd.cc b/sql/wsrep_thd.cc
|
||||
index a3d1961ade2..dab9f91b381 100644
|
||||
--- a/sql/wsrep_thd.cc
|
||||
+++ b/sql/wsrep_thd.cc
|
||||
@@ -698,3 +698,13 @@ void wsrep_thd_auto_increment_variables(THD* thd,
|
||||
*increment= thd->variables.auto_increment_increment;
|
||||
}
|
||||
}
|
||||
+
|
||||
+my_bool wsrep_thd_is_applier(MYSQL_THD thd)
|
||||
+{
|
||||
+ my_bool is_applier= false;
|
||||
+
|
||||
+ if (thd && thd->wsrep_applier)
|
||||
+ is_applier= true;
|
||||
+
|
||||
+ return (is_applier);
|
||||
+}
|
||||
diff --git a/storage/innobase/dict/dict0stats_bg.cc b/storage/innobase/dict/dict0stats_bg.cc
|
||||
index 55bcafddc70..7d30555748c 100644
|
||||
--- a/storage/innobase/dict/dict0stats_bg.cc
|
||||
+++ b/storage/innobase/dict/dict0stats_bg.cc
|
||||
@@ -164,10 +164,26 @@ void dict_stats_update_if_needed_func(dict_table_t* table)
|
||||
&& dict_stats_auto_recalc_is_enabled(table)) {
|
||||
|
||||
#ifdef WITH_WSREP
|
||||
- if (thd && wsrep_on(thd) && wsrep_thd_is_BF(thd, 0)) {
|
||||
+ /* Do not add table to background
|
||||
+ statistic calculation if this thread is not a
|
||||
+ applier (as all DDL, which is replicated (i.e
|
||||
+ is binlogged in master node), will be executed
|
||||
+ with high priority (a.k.a BF) in slave nodes)
|
||||
+ and is BF. This could again lead BF lock
|
||||
+ waits in applier node but it is better than
|
||||
+ no persistent index/table statistics at
|
||||
+ applier nodes. TODO: allow BF threads
|
||||
+ wait for these InnoDB internal SQL-parser
|
||||
+ generated row locks and allow BF thread
|
||||
+ lock waits to be enqueued at head of waiting
|
||||
+ queue. */
|
||||
+ if (thd
|
||||
+ && !wsrep_thd_is_applier(thd)
|
||||
+ && wsrep_on(thd)
|
||||
+ && wsrep_thd_is_BF(thd, 0)) {
|
||||
WSREP_DEBUG("Avoiding background statistics"
|
||||
- " calculation for table %s",
|
||||
- table->name.m_name);
|
||||
+ " calculation for table %s.",
|
||||
+ table->name.m_name);
|
||||
return;
|
||||
}
|
||||
#endif /* WITH_WSREP */
|
|
@ -8,8 +8,8 @@
|
|||
pkgbase=mariadb
|
||||
pkgname=('mariadb-libs' 'mariadb-clients' 'mariadb' 'mytop')
|
||||
pkgdesc='Fast SQL database server, derived from MySQL'
|
||||
pkgver=10.3.13
|
||||
pkgrel=4
|
||||
pkgver=10.3.14
|
||||
pkgrel=1
|
||||
arch=('x86_64')
|
||||
license=('GPL')
|
||||
url='https://mariadb.org/'
|
||||
|
@ -21,8 +21,6 @@ source=("https://mirrors.n-ix.net/mariadb/mariadb-$pkgver/source/mariadb-$pkgver
|
|||
'0002-systemd-sysusers-tmpfiles.patch'
|
||||
'0004-do-not-break-main-configuration-with-instantiated-one.patch'
|
||||
'0005-fix-galera_recovery-with-fs.protected_regular-enabled.patch'
|
||||
'0007-MDEV-18605-Loss-of-column-aliases-by-using-view-and-.patch'
|
||||
'0008-MDEV-18577-Indexes-problem-on-import-dump-SQL.patch'
|
||||
'atomic.patch')
|
||||
sha256sums=('b2aa857ef5b84f85a7ea60a1eac7b34c0ca5151c71a0d44ce2d7fb028d71459a'
|
||||
'SKIP'
|
||||
|
@ -30,8 +28,6 @@ sha256sums=('b2aa857ef5b84f85a7ea60a1eac7b34c0ca5151c71a0d44ce2d7fb028d71459a'
|
|||
'1cd009b473d5965c7cbe6d48fff272030a2ccdd9c7e67b4f837d03252786a09a'
|
||||
'd12806e4f90cc0fc081205dd4c0a5e0e7c455844f04276811b61b57fd24f5545'
|
||||
'66e0acac7436fd8925710ef5cc66ba1a8f63a385ce374f01ae83096cc33d97a0'
|
||||
'98f0bd85e1729133d236831e934a3dd0c9bc6deebbff6aebe8a4bda17e457ac4'
|
||||
'9862b64ea29d3d94434e6b8f422df97e7528b331b793d7a50f22f176d4886325'
|
||||
'7769fd8eb2bb3a6644a2200d01918ff887be25638d79dbec25897fe0d87badc4')
|
||||
|
||||
prepare() {
|
||||
|
@ -57,14 +53,6 @@ prepare() {
|
|||
# https://github.com/MariaDB/server/pull/1137
|
||||
patch -Np1 < ../0005-fix-galera_recovery-with-fs.protected_regular-enabled.patch
|
||||
|
||||
# MDEV-18605: Loss of column aliases by using view and group
|
||||
# https://jira.mariadb.org/browse/MDEV-18605
|
||||
patch -Np1 < ../0007-MDEV-18605-Loss-of-column-aliases-by-using-view-and-.patch
|
||||
|
||||
# MDEV-18577: Indexes problem on import dump SQL
|
||||
# https://jira.mariadb.org/browse/MDEV-18577
|
||||
patch -Np1 < ../0008-MDEV-18577-Indexes-problem-on-import-dump-SQL.patch
|
||||
|
||||
if [[ $CARCH == arm || $CARCH == armv6h ]]; then
|
||||
patch -p0 -i ../atomic.patch
|
||||
fi
|
||||
|
|
|
@ -8,7 +8,7 @@ post_install() {
|
|||
|
||||
post_upgrade() {
|
||||
# show for feature release: 10.1 -> 10.2 -> 10.3 -> ...
|
||||
if [ $(vercmp "${1%.*}" "${2%.*}") -ne 0 ]; then
|
||||
if [ $(vercmp "${1%.*-*}" "${2%.*-*}") -ne 0 ]; then
|
||||
echo ":: MariaDB was updated to a new feature release. To update the data run:"
|
||||
echo " systemctl restart mariadb.service && mysql_upgrade -u root -p"
|
||||
fi
|
||||
|
|
Loading…
Reference in a new issue