summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMichael Klishin <michael@rabbitmq.com>2014-07-25 19:15:51 +0400
committerMichael Klishin <michael@rabbitmq.com>2014-07-25 19:15:51 +0400
commit558afe32703aa49fe59dd1cb8adf38376ff8eab8 (patch)
treeac79c30ac5d2f29a26e5b81e544508c45a3323bc /src
parent44ab6399adee599db992c3d9ab679fce3fb6a0fc (diff)
downloadrabbitmq-server-git-558afe32703aa49fe59dd1cb8adf38376ff8eab8.tar.gz
Catch errors in vm_memory_monitor:get_total_memory/0 and return 'unknown'
Diffstat (limited to 'src')
-rw-r--r--src/vm_memory_monitor.erl14
1 files changed, 13 insertions, 1 deletions
diff --git a/src/vm_memory_monitor.erl b/src/vm_memory_monitor.erl
index 52d09e20e3..435dc3c768 100644
--- a/src/vm_memory_monitor.erl
+++ b/src/vm_memory_monitor.erl
@@ -80,7 +80,19 @@
%% Public API
%%----------------------------------------------------------------------------
-get_total_memory() -> get_total_memory(os:type()).
+get_total_memory() ->
+ try
+ get_total_memory(os:type())
+ catch _:Error ->
+ case get(logged_get_total_memory) of
+ undefined ->
+ rabbit_log:warning("Failed to get total system memory: ~n~p~n~p~n",
+ [Error, erlang:get_stacktrace()]),
+ put(logged_get_total_memory, true);
+ _ -> ok
+ end,
+ unknown
+ end.
get_vm_limit() -> get_vm_limit(os:type()).