[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#986846: unblock: rabbitmq-server/3.8.9-3



Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: unblock

Please unblock package rabbitmq-server

There's a nasty bug when rabbit parses its config file.

If rabbit missreads it, it may incorrectly size its memory
footpring, leading to a (maybe) non-functional service that
doesn't allocate enough memory.

The proposed new release includes a patch from upstream
to fix the situation.

Please unblock rabbitmq-server/3.8.9-3

Cheers,

Thomas Goirand (zigo)
diff -Nru rabbitmq-server-3.8.9/debian/changelog rabbitmq-server-3.8.9/debian/changelog
--- rabbitmq-server-3.8.9/debian/changelog	2021-03-26 14:24:32.000000000 +0100
+++ rabbitmq-server-3.8.9/debian/changelog	2021-04-10 22:59:57.000000000 +0200
@@ -1,3 +1,10 @@
+rabbitmq-server (3.8.9-3) unstable; urgency=medium
+
+  [ Adam Cecile ]
+  * Merge upstream PR #2965 fixing rabbitmqctl parsing bug. (Closes: #986734)
+
+ -- Thomas Goirand <zigo@debian.org>  Sat, 10 Apr 2021 22:59:57 +0200
+
 rabbitmq-server (3.8.9-2) unstable; urgency=medium
 
   * Do not use the /usr/sbin/rabbitmq-server wrapper in systemd service file
diff -Nru rabbitmq-server-3.8.9/debian/patches/series rabbitmq-server-3.8.9/debian/patches/series
--- rabbitmq-server-3.8.9/debian/patches/series	2021-03-26 14:24:32.000000000 +0100
+++ rabbitmq-server-3.8.9/debian/patches/series	2021-04-10 22:59:57.000000000 +0200
@@ -1,2 +1,3 @@
 lets-use-python3-not-python-binary.patch
 rabbitmq-dist.mk.patch
+Upstream_PR2965_fixing_rabbitmqctl_parsing
diff -Nru rabbitmq-server-3.8.9/debian/patches/Upstream_PR2965_fixing_rabbitmqctl_parsing rabbitmq-server-3.8.9/debian/patches/Upstream_PR2965_fixing_rabbitmqctl_parsing
--- rabbitmq-server-3.8.9/debian/patches/Upstream_PR2965_fixing_rabbitmqctl_parsing	1970-01-01 01:00:00.000000000 +0100
+++ rabbitmq-server-3.8.9/debian/patches/Upstream_PR2965_fixing_rabbitmqctl_parsing	2021-04-10 22:59:57.000000000 +0200
@@ -0,0 +1,44 @@
+Description: Fix incorrect parsing of vm_memory_high_watermark
+ Upstream bug:
+ https://github.com/rabbitmq/rabbitmq-server/issues/2964
+Author: Michael Klishin <michael@clojurewerkz.org>
+Origin: upstream, https://github.com/rabbitmq/rabbitmq-server/pull/2965
+Bug-Debian: https://bugs.debian.org/986734
+Reviewed-By: Adam Cecile <acecile@letz-it.lu>
+Last-Update: 2021-04-10
+
+--- rabbitmq-server-3.8.9.orig/deps/rabbit/src/rabbit_disk_monitor.erl
++++ rabbitmq-server-3.8.9/deps/rabbit/src/rabbit_disk_monitor.erl
+@@ -66,7 +66,7 @@
+ 
+ %%----------------------------------------------------------------------------
+ 
+--type disk_free_limit() :: (integer() | string() | {'mem_relative', float() | integer()}).
++-type disk_free_limit() :: integer() | {'absolute', integer()} | string() | {'mem_relative', float() | integer()}.
+ 
+ %%----------------------------------------------------------------------------
+ %% Public API
+@@ -272,6 +272,8 @@ parse_free_win32(CommandResult) ->
+ interpret_limit({mem_relative, Relative})
+     when is_number(Relative) ->
+     round(Relative * vm_memory_monitor:get_total_memory());
++interpret_limit({absolute, Absolute}) ->
++    interpret_limit(Absolute);
+ interpret_limit(Absolute) ->
+     case rabbit_resource_monitor_misc:parse_information_unit(Absolute) of
+         {ok, ParsedAbsolute} -> ParsedAbsolute;
+--- rabbitmq-server-3.8.9.orig/deps/rabbitmq_cli/lib/rabbitmq/cli/core/memory.ex
++++ rabbitmq-server-3.8.9/deps/rabbitmq_cli/lib/rabbitmq/cli/core/memory.ex
+@@ -56,6 +56,12 @@ defmodule RabbitMQ.CLI.Core.Memory do
+   def formatted_watermark(val) when is_float(val) do
+     %{relative: val}
+   end
++  def formatted_watermark({:relative, val}) when is_float(val) do
++    %{relative: val}
++  end
++  def formatted_watermark(:infinity) do
++    %{relative: 1.0}
++  end
+   def formatted_watermark({:absolute, val}) do
+     %{absolute: parse_watermark(val)}
+   end

Reply to: