File 2201-active-transactions-counters.patch of Package erlang
From 5a71896cfa939ecaded6068ee64422d2d03cb518 Mon Sep 17 00:00:00 2001
From: piotr <p.skonieczka@simplito.com>
Date: Mon, 17 Oct 2022 16:07:00 +0200
Subject: [PATCH 1/2] active transactions counters
---
lib/mnesia/src/mnesia_tm.erl | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git a/lib/mnesia/src/mnesia_tm.erl b/lib/mnesia/src/mnesia_tm.erl
index 847cd0074b..e13738d535 100644
--- a/lib/mnesia/src/mnesia_tm.erl
+++ b/lib/mnesia/src/mnesia_tm.erl
@@ -32,6 +32,7 @@
do_update_op/3,
get_info/1,
get_transactions/0,
+ get_transactions_count/0,
info/1,
mnesia_down/1,
prepare_checkpoint/2,
@@ -406,6 +407,10 @@ doit_loop(#state{coordinators=Coordinators,participants=Participants,supervisor=
reply(From, {info, gb_trees:values(Participants),
gb_trees:to_list(Coordinators)}, State);
+ {From, transactions_count} ->
+ reply(From, {transactions_count, gb_trees:size(Participants),
+ gb_trees:size(Coordinators)}, State);
+
{mnesia_down, N} ->
verbose("Got mnesia_down from ~p, reconfiguring...~n", [N]),
reconfigure_coordinators(N, gb_trees:to_list(Coordinators)),
@@ -2121,6 +2126,14 @@ tr_status(Tid,Participant) ->
false -> coordinator
end.
+get_transactions_count() ->
+ case req(transactions_count) of
+ {transactions_count, ParticipantsCount, CoordinatorsCount} ->
+ {ParticipantsCount, CoordinatorsCount};
+ Error ->
+ Error
+ end.
+
get_info(Timeout) ->
case whereis(?MODULE) of
undefined ->
--
2.35.3