summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDiana Corbacho <diana@rabbitmq.com>2019-06-13 13:11:08 +0100
committerDiana Corbacho <diana@rabbitmq.com>2019-06-13 13:11:08 +0100
commite94bdc7a916a1b3773ca0395bf4ff7f474d850db (patch)
tree393e899bd29cd890abf73b3b65348597e8d6f278
parentaea77c7efdc2e318d6e7d2f822113a02449702bd (diff)
downloadrabbitmq-server-git-e94bdc7a916a1b3773ca0395bf4ff7f474d850db.tar.gz
Schema information in mnesia for cli command
[#164550205]
-rw-r--r--src/rabbit_mnesia.erl17
1 files changed, 16 insertions, 1 deletions
diff --git a/src/rabbit_mnesia.erl b/src/rabbit_mnesia.erl
index 162badc33d..bd1c26f20f 100644
--- a/src/rabbit_mnesia.erl
+++ b/src/rabbit_mnesia.erl
@@ -45,7 +45,10 @@
%% Hooks used in `rabbit_node_monitor'
on_node_up/1,
- on_node_down/1
+ on_node_down/1,
+
+ %% Helpers for diagnostics commands
+ schema_info/1
]).
%% Used internally in rpc calls
@@ -755,6 +758,18 @@ running_disc_nodes() ->
ordsets:from_list(RunningNodes))).
%%--------------------------------------------------------------------
+%% Helpers for diagnostics commands
+%%--------------------------------------------------------------------
+
+schema_info(Items) ->
+ Tables = mnesia:system_info(tables),
+ [info(Table, Items) || Table <- Tables].
+
+info(Table, Items) ->
+ All = [{name, Table} | mnesia:table_info(Table, all)],
+ [{Item, proplists:get_value(Item, All)} || Item <- Items].
+
+%%--------------------------------------------------------------------
%% Internal helpers
%%--------------------------------------------------------------------