Skip to content

Commit dacf9b6

Browse files
committed
per_user_connection_channel_tracking_SUITE: Wait for the expected list of connections
[Why] In CI, we sometimes observe two tracked connections in the return value. I don't know yet what they are. Could it be a client that reopened its crashed connection and because stats are updated asynchronously, we get two tracked connections for a short period of time?
1 parent 7154e16 commit dacf9b6

File tree

1 file changed

+9
-7
lines changed

1 file changed

+9
-7
lines changed

deps/rabbit/test/per_user_connection_channel_tracking_SUITE.erl

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ single_node_user_connection_channel_tracking(Config) ->
130130
[Conn1] = open_connections(Config, [0]),
131131
[Chan1] = open_channels(Conn1, 1),
132132
?awaitMatch(1, count_connections_in(Config, Username), ?A_TOUT),
133-
[#tracked_connection{username = Username}] = connections_in(Config, Username),
133+
?awaitMatch([#tracked_connection{username = Username}], connections_in(Config, Username), ?A_TOUT),
134134
?awaitMatch(1, count_channels_in(Config, Username), ?A_TOUT),
135135
[#tracked_channel{username = Username}] = channels_in(Config, Username),
136136
?awaitMatch(true, is_process_alive(Conn1), ?A_TOUT),
@@ -147,7 +147,7 @@ single_node_user_connection_channel_tracking(Config) ->
147147
[Conn2] = open_connections(Config, [{0, Username2}]),
148148
Chans2 = [_|_] = open_channels(Conn2, 5),
149149
?awaitMatch(1, count_connections_in(Config, Username2), ?A_TOUT),
150-
[#tracked_connection{username = Username2}] = connections_in(Config, Username2),
150+
?awaitMatch([#tracked_connection{username = Username2}], connections_in(Config, Username2), ?A_TOUT),
151151
?awaitMatch(5, count_channels_in(Config, Username2), ?A_TOUT),
152152
?awaitMatch(1, tracked_user_connection_count(Config, Username2), ?A_TOUT),
153153
?awaitMatch(5, tracked_user_channel_count(Config, Username2), ?A_TOUT),
@@ -157,7 +157,7 @@ single_node_user_connection_channel_tracking(Config) ->
157157
[Conn3] = open_connections(Config, [0]),
158158
Chans3 = [_|_] = open_channels(Conn3, 5),
159159
?awaitMatch(1, count_connections_in(Config, Username), ?A_TOUT),
160-
[#tracked_connection{username = Username}] = connections_in(Config, Username),
160+
?awaitMatch([#tracked_connection{username = Username}], connections_in(Config, Username), ?A_TOUT),
161161
?awaitMatch(5, count_channels_in(Config, Username), ?A_TOUT),
162162
?awaitMatch(1, tracked_user_connection_count(Config, Username), ?A_TOUT),
163163
?awaitMatch(5, tracked_user_channel_count(Config, Username), ?A_TOUT),
@@ -172,7 +172,7 @@ single_node_user_connection_channel_tracking(Config) ->
172172
[?awaitMatch(true, is_process_alive(Ch), ?A_TOUT) || Ch <- Chans4],
173173
kill_connections([Conn4]),
174174
?awaitMatch(1, count_connections_in(Config, Username), ?A_TOUT),
175-
[#tracked_connection{username = Username}] = connections_in(Config, Username),
175+
?awaitMatch([#tracked_connection{username = Username}], connections_in(Config, Username), ?A_TOUT),
176176
?awaitMatch(5, count_channels_in(Config, Username), ?A_TOUT),
177177
?awaitMatch(1, tracked_user_connection_count(Config, Username), ?A_TOUT),
178178
?awaitMatch(5, tracked_user_channel_count(Config, Username), ?A_TOUT),
@@ -182,9 +182,11 @@ single_node_user_connection_channel_tracking(Config) ->
182182
[Conn5] = open_connections(Config, [0]),
183183
Chans5 = [_|_] = open_channels(Conn5, 7),
184184
?awaitMatch(2, count_connections_in(Config, Username), ?A_TOUT),
185-
[Username, Username] =
186-
lists:map(fun (#tracked_connection{username = U}) -> U end,
187-
connections_in(Config, Username)),
185+
?awaitMatch(
186+
[Username, Username],
187+
lists:map(fun (#tracked_connection{username = U}) -> U end,
188+
connections_in(Config, Username)),
189+
?A_TOUT),
188190
?awaitMatch(12, count_channels_in(Config, Username), ?A_TOUT),
189191
?awaitMatch(12, tracked_user_channel_count(Config, Username), ?A_TOUT),
190192
?awaitMatch(2, tracked_user_connection_count(Config, Username), ?A_TOUT),

0 commit comments

Comments
 (0)