Skip to content

Conversation

@s074
Copy link
Member

@s074 s074 commented Dec 15, 2025

The problem was not properly addressed last time because the exception was crashing the whole connection instead of just the channel, so the exception got thrown again when we tried creating a new channel on the old disconnected connection.

To address the instability that is introduced by publishing to a queue that might or might not be there, due to the race condition, we now isolate the connections. We have separate connections for publishing and consuming messages, this way, when the exception triggers our publishing connection to close, our event consumers are unaffected since they will be using a separate connection. This also means that we can easily restart the connection without worrying about having to reconstruct any state (ie recreating all the user channels and restablishing all the event consumers) since the publishing connection does not have any event consumers and was used purely for publishing events

@s074 s074 marked this pull request as draft December 15, 2025 01:03
@MathMan05
Copy link
Contributor

How's this going?

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