8000 [Messenger] AMQP retry does not work when having several transports · Issue #32050 · symfony/symfony · GitHub
[go: up one dir, main page]

Skip to content

[Messenger] AMQP retry does not work when having several transports #32050

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

Closed
Tobion opened this issue Jun 14, 2019 · 0 comments
Closed

[Messenger] AMQP retry does not work when having several transports #32050

Tobion opened this issue Jun 14, 2019 · 0 comments

Comments

@Tobion
Copy link
Contributor
Tobion commented Jun 14, 2019

Symfony version(s) affected: 4.3

Description
Several messenger transports with retry/delay does not work. One transport creates a
delay_queue__1000 with argument x-dead-letter-exchange: mytransport1

Another transport tries to use the same queue name but with a diferent x-dead-letter-exchange: mytransport2. It's a similar problem as in #31241 but for the exchange name, instead of the routing key.

Solution: Add transport name to the routing key and delay queue name: So instead of delay_queue__1000 it creates a unique queue per transport like delay_queue_mytransport1__100.

@fabpot fabpot closed this as completed Jun 17, 2019
fabpot added a commit that referenced this issue Jun 17, 2019
This PR was squashed before being merged into the 4.3 branch (closes #32052).

Discussion
----------

[Messenger] fix AMQP delay queue to be per exchange

| Q             | A
| ------------- | ---
| Branch?       | 4.3
| Bug fix?      | yes
| New feature?  | no <!-- please update src/**/CHANGELOG.md files -->
| BC breaks?    | no     <!-- see https://symfony.com/bc -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tests pass?   | yes    <!-- please add some, will be required by reviewers -->
| Fixed tickets | #32050
| License       | MIT
| Doc PR        |

this makes the delay/retry work when having several exchanges or renaming your exchange.

also the delay setup did not declare the target exchange. so if you only do delayed messages for a connection, auto-setup forgot to actually create the target exchange.

Commits
-------

5bc3364 [Messenger] fix AMQP delay queue to be per exchange
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants
0