@@ -60,9 +60,11 @@ obfuscated_uris_parameters(Def) when is_list(Def) ->
60
60
rabbit_shovel_parameters :obfuscate_uris_in_definition (Def ).
61
61
62
62
child_exists (Name ) ->
63
- lists :any (fun ({{_ , N }, _ , _ , _ }) -> N =:= Name ;
64
- % % older format, pre 3.13.0 and 3.12.8. See rabbitmq/rabbitmq-server#9894.
65
- ({N , _ , _ , _ }) -> N =:= Name
63
+ Id = id (Name ),
64
+ % % older format, pre 3.13.0 and 3.12.8. See rabbitmq/rabbitmq-server#9894.
65
+ OldId = old_id (Name ),
66
+ lists :any (fun ({ChildId , _ , _ , _ }) ->
67
+ ChildId =:= Id orelse ChildId =:= OldId
66
68
end ,
67
69
mirrored_supervisor :which_children (? SUPERVISOR )).
68
70
@@ -100,7 +102,7 @@ stop_child({VHost, ShovelName} = Name) ->
100
102
cleanup_specs () ->
101
103
Children = mirrored_supervisor :which_children (? SUPERVISOR ),
102
104
103
- SupIdSet = sets :from_list ([element (1 , S ) || S <- Children ]),
105
+ ChildIdSet = sets :from_list ([element (1 , S ) || S <- Children ]),
104
106
ParamsSet = sets :from_list (
105
107
lists :flatmap (
106
108
fun (S ) ->
@@ -110,16 +112,16 @@ cleanup_specs() ->
110
112
[id (Name ), old_id (Name )]
111
113
end ,
112
114
rabbit_runtime_parameters :list_component (<<" shovel" >>))),
113
- F = fun (SupId , ok ) ->
115
+ F = fun (ChildId , ok ) ->
114
116
try
115
- _ = mirrored_supervisor :delete_child (? SUPERVISOR , SupId )
117
+ _ = mirrored_supervisor :delete_child (? SUPERVISOR , ChildId )
116
118
catch _ :_ :_Stacktrace ->
117
119
ok
118
120
end ,
119
121
ok
120
122
end ,
121
123
% % Delete any supervisor children that do not have their respective runtime parameters in the database.
122
- SetToCleanUp = sets :subtract (SupIdSet , ParamsSet ),
124
+ SetToCleanUp = sets :subtract (ChildIdSet , ParamsSet ),
123
125
ok = sets :fold (F , ok , SetToCleanUp ).
124
126
125
127
% %----------------------------------------------------------------------------
0 commit comments