Skip to content

Conversation

@acogoluegnes
Copy link
Contributor

Not when the channel or the connection is closed.

References #13085, #9356

Not when the channel or the connection is closed.

References #13085, #9356
@acogoluegnes acogoluegnes force-pushed the stream-consumer-cancel-event branch from 5c19e4e to 69d0382 Compare January 17, 2025 13:43
@acogoluegnes acogoluegnes marked this pull request as ready for review January 17, 2025 13:44
@acogoluegnes acogoluegnes merged commit 1886cae into main Jan 17, 2025
268 of 272 checks passed
@acogoluegnes acogoluegnes deleted the stream-consumer-cancel-event branch January 17, 2025 14:13
acogoluegnes added a commit that referenced this pull request Jan 17, 2025
Emit cancellation event only when stream consumer is cancelled (backport #13092)
acogoluegnes added a commit that referenced this pull request May 28, 2025
Not only when it is removed explicitly by the client. This is necessary
to make sure the consumer record is removed from the management ETS
tables (consumer_stats) and to avoid ghost consumers.

For other protocols like AMQP 091, the consumer_status ETS table is
cleaned up when a channel goes down, but there is no channel concept in
the stream protocol.

This is not consistent with other protocols or queue implementations
(which emits the event only on explicit consumer cancellation)
but is necessary to clean up stats correctly.

References #13092
mergify bot pushed a commit that referenced this pull request May 29, 2025
Not only when it is removed explicitly by the client. This is necessary
to make sure the consumer record is removed from the management ETS
tables (consumer_stats) and to avoid ghost consumers.

For other protocols like AMQP 091, the consumer_status ETS table is
cleaned up when a channel goes down, but there is no channel concept in
the stream protocol.

This is not consistent with other protocols or queue implementations
(which emits the event only on explicit consumer cancellation)
but is necessary to clean up stats correctly.

References #13092

(cherry picked from commit 52c89ab)
LoisSotoLopez pushed a commit to cloudamqp/rabbitmq-server that referenced this pull request Jul 16, 2025
Not only when it is removed explicitly by the client. This is necessary
to make sure the consumer record is removed from the management ETS
tables (consumer_stats) and to avoid ghost consumers.

For other protocols like AMQP 091, the consumer_status ETS table is
cleaned up when a channel goes down, but there is no channel concept in
the stream protocol.

This is not consistent with other protocols or queue implementations
(which emits the event only on explicit consumer cancellation)
but is necessary to clean up stats correctly.

References rabbitmq#13092
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants