]> review.fuel-infra Code Review - packages/trusty/rabbitmq-server.git/commitdiff
Backport fix for internal state corruption. 86/14586/1
authorAlexey Lebedeff <alebedev@mirantis.com>
Thu, 10 Dec 2015 11:56:31 +0000 (14:56 +0300)
committerAlexey Lebedeff <alebedev@mirantis.com>
Thu, 10 Dec 2015 15:32:10 +0000 (18:32 +0300)
Upstream patch - https://github.com/rabbitmq/rabbitmq-common/pull/18

Change-Id: I1d2cd47305c0dfa8279e418088d8ab0e98e4ecc7
Partial-Bug: #1518264

.gitignore [new file with mode: 0644]
debian/changelog
debian/patches/fix-pmon-demonitor-function.diff [new file with mode: 0644]
debian/patches/series [new file with mode: 0644]

diff --git a/.gitignore b/.gitignore
new file mode 100644 (file)
index 0000000..845ca06
--- /dev/null
@@ -0,0 +1 @@
+.pc
index 993b3543819162a16928fffabbff676c0c5f3f14..83a7f5288360ab4cfc0c3dee91f547d98de4e0ff 100644 (file)
@@ -1,3 +1,9 @@
+rabbitmq-server (3.5.6-1~u14.04+mos2) mos8.0; urgency=medium
+
+  * Backport https://github.com/rabbitmq/rabbitmq-common/pull/18
+
+ -- Alexey Lebedeff <alebedev@mirantis.com>  Thu, 10 Dec 2015 14:54:05 +0300
+
 rabbitmq-server (3.5.6-1~u14.04+mos1) mos8.0; urgency=medium
 
   * New upstream release.
diff --git a/debian/patches/fix-pmon-demonitor-function.diff b/debian/patches/fix-pmon-demonitor-function.diff
new file mode 100644 (file)
index 0000000..5f114b3
--- /dev/null
@@ -0,0 +1,19 @@
+Description: Fix internal state corruption introduced by pmon:demonitor/2
+Author: Alexey Lebedeff <alebedev@mirantis.com>
+Origin: backport, https://github.com/rabbitmq/rabbitmq-common/pull/18
+Applied-Upstream: 3.5.7, 3.6.0
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+Index: rabbitmq-server/src/pmon.erl
+===================================================================
+--- rabbitmq-server.orig/src/pmon.erl
++++ rabbitmq-server/src/pmon.erl
+@@ -84,7 +84,7 @@ demonitor(Item, S = #state{dict = M, mod
+     case dict:find(Item, M) of
+         {ok, MRef} -> Module:demonitor(MRef),
+                       S#state{dict = dict:erase(Item, M)};
+-        error      -> M
++        error      -> S
+     end.
+ is_monitored(Item, #state{dict = M}) -> dict:is_key(Item, M).
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644 (file)
index 0000000..a2227a7
--- /dev/null
@@ -0,0 +1 @@
+fix-pmon-demonitor-function.diff