Skip to content

Conversation

pniedzielski
Copy link
Collaborator

@pniedzielski pniedzielski commented Oct 22, 2025

This PR causes the client to close the channel to the broker when opening, reopening, or closing a queue times out, rather than marking the queue as expired.

@pniedzielski pniedzielski force-pushed the fix/reopen-close branch 3 times, most recently from 8a5424c to f1e5b25 Compare October 22, 2025 13:47
@pniedzielski pniedzielski marked this pull request as ready for review October 22, 2025 14:21
@pniedzielski pniedzielski requested a review from a team as a code owner October 22, 2025 14:21
Copy link
Collaborator

@dorjesinpo dorjesinpo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for adding the IT.
There are still remains of e_*_EXPIRED, is it possible to get rid of all of them?

@pniedzielski pniedzielski force-pushed the fix/reopen-close branch 2 times, most recently from 9a799b6 to 525c1cc Compare October 22, 2025 21:13
pniedzielski and others added 2 commits October 22, 2025 17:19
This patch forces the channel to close when an operation times out while
a queue is reopening.  In this state, we do not know whether the queue
has been successfully reopened or whether it will be in the future if
the remote broker catches up.  The safest thing to do here is to kill
the connection to the broker and try to reconnect anew.

Signed-off-by: Patrick M. Niedzielski <[email protected]>
This patch forces the channel to close when an operation times out while a
queue is opening.  In this state, we do not know whether the queue has been
successfully reopened or whether it will be in the future if the remote broker
catches up.  The safest thing to do here is to kill the connection to the
broker and let the user try to open the queue again.

Signed-off-by: Patrick M. Niedzielski <[email protected]>
This patch forces the channel to close when an operation times out while a
queue is being closed.  In this state, we do not know whether the queue has
been successfully closed or whether it will be in the future if the remote
broker catches up.  The safest thing to do here is to kill the connection to
the broker, closing this (and all queues) and letting queues that were open be
automatically reopened when we reconnect to a broker.

Signed-off-by: Patrick M. Niedzielski <[email protected]>
@pniedzielski pniedzielski changed the title Fix[bmqimp]: Close channel on reopen timeouts Fix[bmqimp]: Close channel on open, reopen, and close timeouts Oct 22, 2025
Copy link

@bmq-oss-ci bmq-oss-ci bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Build 3089 of commit d8534bd has completed with FAILURE

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants