Close stream consumer log after stream is deleted or unavailable

References #14127
This commit is contained in:
Arnaud Cogoluègnes 2025-06-27 10:36:15 +02:00
parent cee62dbc96
commit 2f048b4b57
No known key found for this signature in database
GPG Key ID: D5C8C4DFAD43AFA8
1 changed files with 7 additions and 3 deletions

View File

@ -3309,25 +3309,29 @@ clean_subscriptions(MemberPid, Stream,
fun(SubId, {DelSubIds, Rqsts0}) ->
#{SubId := Consumer} = Consumers,
case {MemberPid, Consumer} of
{undefined, _C} ->
{undefined, #consumer{log = Log}} ->
rabbit_stream_metrics:consumer_cancelled(self(),
stream_r(Stream,
C0),
SubId,
Username),
close_log(Log),
Rqsts1 = maybe_unregister_consumer(
VirtualHost, Consumer,
single_active_consumer(Consumer),
Rqsts0),
{[SubId | DelSubIds], Rqsts1};
{MemberPid,
#consumer{configuration =
#consumer_configuration{member_pid = MemberPid}}} ->
#consumer{
log = Log,
configuration = #consumer_configuration{member_pid = MemberPid}}} ->
rabbit_stream_metrics:consumer_cancelled(self(),
stream_r(Stream,
C0),
SubId,
Username),
close_log(Log),
Rqsts1 = maybe_unregister_consumer(
VirtualHost, Consumer,
single_active_consumer(Consumer),