$OpenBSD: patch-deps_riak_kv_src_riak_kv_stat_erl,v 1.1 2012/12/19 01:47:25 jmatthew Exp $

Backport commit 8e25ffa from riak_kv for erlang r15b02 compatibility
https://github.com/basho/riak_kv/pull/415

--- deps/riak_kv/src/riak_kv_stat.erl.orig	Fri Dec 14 14:18:07 2012
+++ deps/riak_kv/src/riak_kv_stat.erl	Fri Dec 14 14:17:04 2012
@@ -418,7 +418,7 @@ system_stats() ->
     [{nodename, node()},
      {connected_nodes, nodes()},
      {sys_driver_version, list_to_binary(erlang:system_info(driver_version))},
-     {sys_global_heaps_size, erlang:system_info(global_heaps_size)},
+     {sys_global_heaps_size, safe_global_heap_size()},
      {sys_heap_type, erlang:system_info(heap_type)},
      {sys_logical_processors, erlang:system_info(logical_processors)},
      {sys_otp_release, list_to_binary(erlang:system_info(otp_release))},
@@ -429,6 +429,14 @@ system_stats() ->
      {sys_threads_enabled, erlang:system_info(threads)},
      {sys_thread_pool_size, erlang:system_info(thread_pool_size)},
      {sys_wordsize, erlang:system_info(wordsize)}].
+
+safe_global_heap_size() ->
+    try erlang:system_info(global_heaps_size) of
+        N -> N
+    catch
+        error:badarg ->
+            deprecated
+    end.
 
 app_stats() ->
     [{list_to_atom(atom_to_list(A) ++ "_version"), list_to_binary(V)}
