summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJean-Sébastien Pédron <jean-sebastien@rabbitmq.com>2017-06-26 14:38:46 +0200
committerJean-Sébastien Pédron <jean-sebastien@rabbitmq.com>2017-06-26 14:38:46 +0200
commit93b965c5ab96b81f71bc64e3b43097e4a8f97b96 (patch)
tree569c04645c12d89d9ed198c4e756a2054c3151c3
parent5aa080b9695e341784272268bf90927914f1ce7a (diff)
parent2bddf88c8ee0b247e105d32371b74c769e16043c (diff)
downloadrabbitmq-server-git-93b965c5ab96b81f71bc64e3b43097e4a8f97b96.tar.gz
Merge branch 'stable'
-rw-r--r--README1
-rw-r--r--src/term_to_binary_compat.erl1
-rw-r--r--src/vm_memory_monitor.erl10
-rw-r--r--test/term_to_binary_compat_prop_SUITE.erl33
4 files changed, 27 insertions, 18 deletions
diff --git a/README b/README
deleted file mode 100644
index 43bfe006f6..0000000000
--- a/README
+++ /dev/null
@@ -1 +0,0 @@
-See http://rabbitmq.com and https://github.com/rabbitmq/rabbitmq-server.
diff --git a/src/term_to_binary_compat.erl b/src/term_to_binary_compat.erl
index 13396ddacb..b5e8f72bd4 100644
--- a/src/term_to_binary_compat.erl
+++ b/src/term_to_binary_compat.erl
@@ -22,4 +22,3 @@
term_to_binary_1(Term) ->
term_to_binary(Term, [{minor_version, 1}]).
-
diff --git a/src/vm_memory_monitor.erl b/src/vm_memory_monitor.erl
index f21dc91e0a..b07ff27f17 100644
--- a/src/vm_memory_monitor.erl
+++ b/src/vm_memory_monitor.erl
@@ -189,14 +189,12 @@ get_system_process_resident_memory({unix,openbsd}) ->
get_system_process_resident_memory({win32,_OSname}) ->
OsPid = os:getpid(),
- Cmd = " tasklist /fi \"pid eq " ++ OsPid ++ "\" /fo LIST 2>&1 ",
+ Cmd = "wmic process where processid=" ++ OsPid ++ " get WorkingSetSize /value 2>&1",
CmdOutput = os:cmd(Cmd),
- %% Memory usage is displayed in kilobytes
- %% with comma-separated thousands
- case re:run(CmdOutput, "Mem Usage:\\s+([0-9,]+)\\s+K", [{capture, all_but_first, list}]) of
+ %% Memory usage is displayed in bytes
+ case re:run(CmdOutput, "WorkingSetSize=([0-9]+)", [{capture, all_but_first, binary}]) of
{match, [Match]} ->
- NoCommas = [ N || N <- Match, N =/= $, ],
- {ok, list_to_integer(NoCommas) * 1024};
+ {ok, binary_to_integer(Match)};
_ ->
{error, {unexpected_output_from_command, Cmd, CmdOutput}}
end;
diff --git a/test/term_to_binary_compat_prop_SUITE.erl b/test/term_to_binary_compat_prop_SUITE.erl
index 69aa63433d..ba5069860a 100644
--- a/test/term_to_binary_compat_prop_SUITE.erl
+++ b/test/term_to_binary_compat_prop_SUITE.erl
@@ -27,7 +27,7 @@
all() ->
[
- pre_3_6_11_works,
+ ensure_term_to_binary_defaults_to_version_1,
term_to_binary_latin_atom,
queue_name_to_binary
].
@@ -47,19 +47,32 @@ end_per_suite(Config) ->
init_per_testcase(Testcase, Config) ->
rabbit_ct_helpers:testcase_started(Config, Testcase).
-%% If this test fails - the erlang version is not supported in
-%% RabbitMQ-3.6.10 and earlier.
-pre_3_6_11_works(Config) ->
- Property = fun () -> prop_pre_3_6_11_works(Config) end,
- rabbit_ct_proper_helpers:run_proper(Property, [],
- ?ITERATIONS_TO_RUN_UNTIL_CONFIDENT).
-
-prop_pre_3_6_11_works(_Config) ->
+%% R16B03 defaults term_to_binary version to 0, this test would always fail
+ensure_term_to_binary_defaults_to_version_1(Config) ->
+ CurrentERTS = erlang:system_info(version),
+ MinimumTestedERTS = "6.0",
+ case rabbit_misc:version_compare(CurrentERTS, MinimumTestedERTS, gte) of
+ true ->
+ Property = fun () ->
+ prop_ensure_term_to_binary_defaults_to_version_1(Config)
+ end,
+ rabbit_ct_proper_helpers:run_proper(
+ Property, [],
+ ?ITERATIONS_TO_RUN_UNTIL_CONFIDENT);
+ false ->
+ ct:pal(
+ ?LOW_IMPORTANCE,
+ "This test require ERTS ~p or above, running on ~p~n"
+ "Skipping test...",
+ [MinimumTestedERTS, CurrentERTS])
+ end.
+
+prop_ensure_term_to_binary_defaults_to_version_1(_Config) ->
?FORALL(Term, any(),
begin
Current = term_to_binary(Term),
Compat = term_to_binary_compat:term_to_binary_1(Term),
- binary_to_term(Current) =:= binary_to_term(Compat)
+ Current =:= Compat
end).
term_to_binary_latin_atom(Config) ->