diff options
| author | Tim Watson <tim@rabbitmq.com> | 2012-10-17 15:36:19 +0100 |
|---|---|---|
| committer | Tim Watson <tim@rabbitmq.com> | 2012-10-17 15:36:19 +0100 |
| commit | 1021784c9d4258099607aed3c72b536f720e8d48 (patch) | |
| tree | 470499f27c1a1e7a6ee453c357abf66d802fef0c | |
| parent | bbd45f3d83621c78df930ab03864de04f65daacf (diff) | |
| download | rabbitmq-server-git-1021784c9d4258099607aed3c72b536f720e8d48.tar.gz | |
use the worker pool for gm mnesia txns
| -rw-r--r-- | src/gm.erl | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/src/gm.erl b/src/gm.erl index 90433e84c5..285bb927e9 100644 --- a/src/gm.erl +++ b/src/gm.erl @@ -523,10 +523,10 @@ info(Server) -> gen_server2:call(Server, info, infinity). forget_group(GroupName) -> - {atomic, ok} = mnesia:sync_transaction( - fun () -> - mnesia:delete({?GROUP_TABLE, GroupName}) - end), + ok = rabbit_misc:execute_mnesia_transaction( + fun () -> + mnesia:delete({?GROUP_TABLE, GroupName}) + end), ok. init([GroupName, Module, Args]) -> @@ -1033,8 +1033,8 @@ read_group(GroupName) -> end. prune_or_create_group(Self, GroupName) -> - {atomic, Group} = - mnesia:sync_transaction( + Group = + rabbit_misc:execute_mnesia_transaction( fun () -> GroupNew = #gm_group { name = GroupName, members = [Self], version = ?VERSION_START }, @@ -1053,8 +1053,8 @@ prune_or_create_group(Self, GroupName) -> Group. record_dead_member_in_group(Member, GroupName) -> - {atomic, Group} = - mnesia:sync_transaction( + Group = + rabbit_misc:execute_mnesia_transaction( fun () -> [Group1 = #gm_group { members = Members, version = Ver }] = mnesia:read({?GROUP_TABLE, GroupName}), case lists:splitwith( @@ -1072,8 +1072,8 @@ record_dead_member_in_group(Member, GroupName) -> Group. record_new_member_in_group(GroupName, Left, NewMember, Fun) -> - {atomic, {Result, Group}} = - mnesia:sync_transaction( + {Result, Group} = + rabbit_misc:execute_mnesia_transaction( fun () -> [#gm_group { members = Members, version = Ver } = Group1] = mnesia:read({?GROUP_TABLE, GroupName}), @@ -1090,8 +1090,8 @@ record_new_member_in_group(GroupName, Left, NewMember, Fun) -> erase_members_in_group(Members, GroupName) -> DeadMembers = [{dead, Id} || Id <- Members], - {atomic, Group} = - mnesia:sync_transaction( + Group = + rabbit_misc:execute_mnesia_transaction( fun () -> [Group1 = #gm_group { members = [_|_] = Members1, version = Ver }] = |
