From e44a2a9d84f9d137f0e921215a30c3212d6395b2 Mon Sep 17 00:00:00 2001 From: Peter Lemenkov Date: Jun 29 2016 15:23:17 +0000 Subject: Fixed crash during slave promotion Signed-off-by: Peter Lemenkov --- diff --git a/rabbitmq-server-0005-Initialise-wait_timeout-in-slave-promotion.patch b/rabbitmq-server-0005-Initialise-wait_timeout-in-slave-promotion.patch new file mode 100644 index 0000000..20d8f7b --- /dev/null +++ b/rabbitmq-server-0005-Initialise-wait_timeout-in-slave-promotion.patch @@ -0,0 +1,27 @@ +From: Diana Corbacho +Date: Thu, 26 May 2016 16:05:16 +0100 +Subject: [PATCH] Initialise wait_timeout in slave promotion + + +diff --git a/src/rabbit_mirror_queue_master.erl b/src/rabbit_mirror_queue_master.erl +index e447e9d..c481706 100644 +--- a/src/rabbit_mirror_queue_master.erl ++++ b/src/rabbit_mirror_queue_master.erl +@@ -518,6 +518,7 @@ promote_backing_queue_state(QName, CPid, BQ, BQS, GM, AckTags, Seen, KS) -> + Depth = BQ:depth(BQS1), + true = Len == Depth, %% ASSERTION: everything must have been requeued + ok = gm:broadcast(GM, {depth, Depth}), ++ WaitTimeout = rabbit_misc:get_env(rabbit, slave_wait_timeout, 15000), + #state { name = QName, + gm = GM, + coordinator = CPid, +@@ -525,7 +526,8 @@ promote_backing_queue_state(QName, CPid, BQ, BQS, GM, AckTags, Seen, KS) -> + backing_queue_state = BQS1, + seen_status = Seen, + confirmed = [], +- known_senders = sets:from_list(KS) }. ++ known_senders = sets:from_list(KS), ++ wait_timeout = WaitTimeout }. + + sender_death_fun() -> + Self = self(), diff --git a/rabbitmq-server.spec b/rabbitmq-server.spec index a8520ac..fc8534a 100644 --- a/rabbitmq-server.spec +++ b/rabbitmq-server.spec @@ -5,7 +5,7 @@ Name: rabbitmq-server Version: 3.6.2 -Release: 3%{?dist} +Release: 4%{?dist} License: MPLv1.1 Group: Development/Libraries Source: http://www.rabbitmq.com/releases/rabbitmq-server/v%{version}/%{name}-%{version}.tar.xz @@ -20,6 +20,7 @@ Patch1: rabbitmq-server-0001-Remove-excessive-sd_notify-code.patch Patch2: rabbitmq-server-0002-Add-systemd-notification-support.patch Patch3: rabbitmq-server-0003-Revert-Distinct-exit-codes-for-CLI-utilities.patch Patch4: rabbitmq-server-0004-Allow-guest-login-from-non-loopback-connections.patch +Patch5: rabbitmq-server-0005-Initialise-wait_timeout-in-slave-promotion.patch URL: http://www.rabbitmq.com/ BuildArch: noarch BuildRequires: erlang >= %{erlang_minver}, python-simplejson, xmlto, libxslt, python, zip @@ -56,6 +57,7 @@ scalable implementation of an AMQP broker. %patch2 -p1 %patch3 -p1 %patch4 -p1 +%patch5 -p1 # We have to remove it until common_test subpackage lands RHOS rm -f \ @@ -171,6 +173,9 @@ done %changelog +* Wed Jun 29 2016 Peter Lemenkov - 3.6.2-4 +- Fixed crash during slave promotion + * Thu May 26 2016 Peter Lemenkov - 3.6.2-3 - Use empty list for non-allowed user names for loopback connection