SHA256
1
0
forked from pool/mariadb

Accepting request 580660 from home:rsalevsky:branches:server:database

- add mariadb-10.2.14-xtrabackup-v2.patch (bsc#1083087)

OBS-URL: https://build.opensuse.org/request/show/580660
OBS-URL: https://build.opensuse.org/package/show/server:database/mariadb?expand=0&rev=208
This commit is contained in:
Martin Pluskal 2018-02-27 20:02:47 +00:00 committed by Git OBS Bridge
parent a74babaaed
commit 401d035448
3 changed files with 48 additions and 5 deletions

View File

@ -0,0 +1,36 @@
From 4e6dab94d0931eafba502f5a91da29a54e75bb33 Mon Sep 17 00:00:00 2001
From: Daniel Black <daniel.black@au1.ibm.com>
Date: Wed, 21 Feb 2018 19:38:57 +0530
Subject: [PATCH] MDEV-10.1.31 does not join an existing cluster with SST
xtrabackup-v2
Analysis:- The problem is the change in the implementation of wait_for_listen
in wsrep_sst_xtrabackup-v2.sh. The new script uses lsof which will always
exit with an error code if it can't find all the items, and because the
script has the -e option set in the hashbang line (#!/bin/bash -ue), the
script will abort right after running lsof if lsof can't find even a single
item among all the items listed in its arguments. This will happen even if
socat is running and listening, because it can't find nc. The loop in
wait_for_listen will therefore always quit after one iteration without
writing the "ready" line to signal the parent.
Solution:- We will or the lsof with true.
Patch Credit :Daniel Black and David Wang
---
scripts/wsrep_sst_xtrabackup-v2.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/scripts/wsrep_sst_xtrabackup-v2.sh b/scripts/wsrep_sst_xtrabackup-v2.sh
index 64dd182e2f2f..9104daf19bc3 100644
--- a/scripts/wsrep_sst_xtrabackup-v2.sh
+++ b/scripts/wsrep_sst_xtrabackup-v2.sh
@@ -644,7 +644,7 @@ wait_for_listen()
for i in {1..300}
do
- LSOF_OUT=$(lsof -sTCP:LISTEN -i TCP:${PORT} -a -c nc -c socat -F c)
+ LSOF_OUT=$(lsof -sTCP:LISTEN -i TCP:${PORT} -a -c nc -c socat -F c 2> /dev/null || :)
[ -n "${LSOF_OUT}" ] && break
sleep 0.2
done

View File

@ -1,3 +1,8 @@
-------------------------------------------------------------------
Tue Feb 27 14:13:50 UTC 2018 - rsalevsky@suse.com
- add mariadb-10.2.14-xtrabackup-v2.patch (bsc#1083087)
-------------------------------------------------------------------
Wed Feb 14 11:51:39 UTC 2018 - kstreitova@suse.com

View File

@ -1,7 +1,7 @@
#
# spec file for package mariadb
#
# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -54,7 +54,7 @@ Release: 0
Summary: Server part of MariaDB
License: SUSE-GPL-2.0-with-FLOSS-exception
Group: Productivity/Databases/Servers
URL: https://www.mariadb.org
Url: https://www.mariadb.org
Source: https://downloads.mariadb.org/f/mariadb-%{version}/source/mariadb-%{version}.tar.gz
Source1: %{name}-%{version}.tar.gz.sig
Source2: %{name}.keyring
@ -81,6 +81,7 @@ Patch9: mariadb-10.2.8-systemd-cmake.patch
Patch10: mariadb-10.2.3-mysql_install_db-mariadb_dirs.patch
Patch11: mariadb-10.2.9-galera_cnf.patch
Patch12: mariadb-10.2.10-disable_openssl_compatibility_check.patch
Patch13: mariadb-10.2.14-xtrabackup-v2.patch
BuildRequires: bison
BuildRequires: cmake
BuildRequires: dos2unix
@ -137,8 +138,8 @@ Conflicts: otherproviders(mysql)
Conflicts: otherproviders(mysql-debug)
Conflicts: otherproviders(mysql-server)
# Compatibility with Fedora/CentOS
Provides: mysql-server = %{version}
Provides: mariadb-server = %{version}
Provides: mysql-server = %{version}
# Compatibility with old version
Provides: %{name}-debug-version = %{version}
Obsoletes: %{name}-debug-version < %{version}
@ -227,8 +228,8 @@ Group: Productivity/Databases/Tools
Requires: %{name} = %{version}
# galera-3 is not in openSUSE:Factory now
#Requires: galera-3 >= 25.3.18
Requires: lsof
Requires: iproute2
Requires: lsof
Requires: rsync
Requires: socat
Requires: which
@ -315,8 +316,8 @@ Requires: perl-DBD-mysql
Conflicts: otherproviders(mysql-tools)
# make sure this package is installed when updating from 10.2 and older
Provides: mysql-client:%{_bindir}/perror
Provides: mysql:%{_bindir}/mysqlhotcopy
Provides: mysql-tools = %{version}
Provides: mysql:%{_bindir}/mysqlhotcopy
Obsoletes: mysql-tools < %{version}
Provides: %{extra_provides}-tools = %{version}
Obsoletes: %{extra_provides}-tools < %{version}
@ -340,6 +341,7 @@ applications with MariaDB.
%patch10 -p1
%patch11 -p1
%patch12 -p1
%patch13 -p1
cp %{_sourcedir}/suse-test-run .