Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Expose events ConsumerTagChangeAfterRecovery and QueueNameChangeAfterRecovery #935

Merged

Conversation

paulomf
Copy link
Contributor

@paulomf paulomf commented Aug 26, 2020

Proposed Changes

After the merge #490 the events ConsumerTagChangeAfterRecovery and QueueNameChangeAfterRecovery became inaccessible. I propose to declare those events in the interface IAutorecoveringConnection.

Types of Changes

  • Bug fix (non-breaking change which fixes issue #NNNN)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause an observable behavior change in existing systems)
  • Documentation improvements (corrections, new content, etc)
  • Cosmetic change (whitespace, formatting, etc)

Checklist

  • I have read the CONTRIBUTING.md document
  • I have signed the CA (see https://cla.pivotal.io/sign/rabbitmq)
  • All tests pass locally with my changes
  • I have added tests that prove my fix is effective or that my feature works
  • I have added necessary documentation (if appropriate)
  • Any dependent changes have been merged and published in related repositories

@michaelklishin
Copy link
Member

@paulomf why do you need to observe those events? They are very much internal to the operation of the recovery mechanism.

@paulomf
Copy link
Contributor Author

paulomf commented Aug 26, 2020

@michaelklishin When using a server named queue, a new queue name may get generated after an automatic network recovery. Without observing such an event, I'm unable to retrieve the new name.

Unfortunately, the automatic recovery may not be able to recover the queue when using a constant queue name if the client starts a new connection without the server clearing the previous one and it's correlated exclusive queue, which is why I'm using the server-named queue.

@michaelklishin michaelklishin added this to the 7.0.0 milestone Aug 27, 2020
@michaelklishin michaelklishin merged commit 3e1fce7 into rabbitmq:master Aug 27, 2020
@michaelklishin
Copy link
Member

This could be backported for 6.3.0, let's see what others say and how far off 7.0 may be.

michaelklishin added a commit that referenced this pull request Aug 27, 2020
@leendertdommicent
Copy link

Any chance that this gets backported to 6.X? It is the only missing functionality that keeps us from upgrading.

@michaelklishin
Copy link
Member

@Dommicentl from upgrading to what version? This change has never shipped in a release.

@leendertdommicent
Copy link

We are currently on the latest 5.X version. But we would like to upgrade to the latest 6.X. However we also use the QueueNameChangeAfterRecovery event which got removed in the 6.0 release. So we need this change, which again exposes this event, before we are able to upgrade. That is why I wondered if it could be backported to the 6.X branch.

michaelklishin added a commit that referenced this pull request Jul 27, 2021
Expose events ConsumerTagChangeAfterRecovery and QueueNameChangeAfterRecovery

(cherry picked from commit 3e1fce7)
@michaelklishin
Copy link
Member

Backported to 7.x and 6.x.

@leendertdommicent
Copy link

Super, thanks! Is there a new release planned of the 6.X branch in the near future?

@leendertdommicent
Copy link

@michaelklishin, any update on a release that will contain this fix?

@pdoteter
Copy link

pdoteter commented Nov 8, 2021

Backported to 7.x and 6.x.

Nice, I was looking in some issue when I came across this thread, should solved the same issue we have. Any word when the new 6.x branch with this fix will be released?

@lukebakken lukebakken modified the milestones: 8.0.0, 7.0.0 Mar 8, 2022
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.

5 participants