From 401d035448b1a2b2f4bef7f67ae1f2bc13996c8a60a486436c13ab6fd36fcee5 Mon Sep 17 00:00:00 2001 From: Martin Pluskal Date: Tue, 27 Feb 2018 20:02:47 +0000 Subject: [PATCH] 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 --- mariadb-10.2.14-xtrabackup-v2.patch | 36 +++++++++++++++++++++++++++++ mariadb.changes | 5 ++++ mariadb.spec | 12 ++++++---- 3 files changed, 48 insertions(+), 5 deletions(-) create mode 100644 mariadb-10.2.14-xtrabackup-v2.patch diff --git a/mariadb-10.2.14-xtrabackup-v2.patch b/mariadb-10.2.14-xtrabackup-v2.patch new file mode 100644 index 0000000..49f70f7 --- /dev/null +++ b/mariadb-10.2.14-xtrabackup-v2.patch @@ -0,0 +1,36 @@ +From 4e6dab94d0931eafba502f5a91da29a54e75bb33 Mon Sep 17 00:00:00 2001 +From: Daniel Black +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 diff --git a/mariadb.changes b/mariadb.changes index 58f4a86..b743b71 100644 --- a/mariadb.changes +++ b/mariadb.changes @@ -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 diff --git a/mariadb.spec b/mariadb.spec index ab87502..3c6dc7c 100644 --- a/mariadb.spec +++ b/mariadb.spec @@ -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 .