Skip to content

[Messenger] Add config option 'arguments_delay' for delay queues #48151

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

Conversation

fwolfsjaeger
Copy link
Contributor

@fwolfsjaeger fwolfsjaeger commented Nov 8, 2022

Q A
Branch? 6.3
Bug fix? no
New feature? yes
Deprecations? no
Tickets Fix #46254 & #44186
License MIT
Doc PR symfony/symfony-docs#...

I've added the config option 'arguments_delay' to add arguments to delay queues when they are created in \Symfony\Component\Messenger\Bridge\Amqp\Transport\Connection::createDelayQueue().

I'm not sure if this requires a Doc PR. If so, please just let me know and I'll add one.
Also, it might be necessary to remove certain arguments, but unfortunately I don't know which.

@fwolfsjaeger
Copy link
Contributor Author

Okay, my changes do not work as expected. For whatever reason messages from delayed quorum queues vanish occasionally.

I'll have to investigate why later.

@carsonbot
Copy link

Hey!

I think @ruudk has recently worked with this code. Maybe they can help review this?

Cheers!

Carsonbot

@fwolfsjaeger fwolfsjaeger force-pushed the amqp-messenger-quorum-6.2 branch from af34661 to f268c67 Compare November 25, 2022 17:12
@fwolfsjaeger fwolfsjaeger changed the title [Messenger] Use (merge) main queue arguments when creating delayed queue [Messenger] Add config option 'arguments_delay' for delay queues Nov 25, 2022
@fwolfsjaeger
Copy link
Contributor Author

Alright, I've made some changes, it works now. Please let me know if you need a DOC PR or if this should go to 6.3 instead of 6.2.

@thomasbeaujean
Copy link

Hi @fwolfsjaeger, I add the same issue and went almost with the same strategy as you.

However, if I understand correctly your PR, I have to know in advance the routingKeys (the name of the delay queues, that depends of the name of the original queue and the delays).
And in my use case, it is something that is unknown by the dev team and is handled by the "infra guys".

I thought is was easier to only precise the extra args for the associated delay queues.

That is why I created a PR that achieve the same goal.
I do not mean to compete your PR.

@fwolfsjaeger
Copy link
Contributor Author

Hi @fwolfsjaeger, I add the same issue and went almost with the same strategy as you.

However, if I understand correctly your PR, I have to know in advance the routingKeys (the name of the delay queues, that depends of the name of the original queue and the delays). And in my use case, it is something that is unknown by the dev team and is handled by the "infra guys".

I thought is was easier to only precise the extra args for the associated delay queues.

That is why I created a PR that achieve the same goal. I do not mean to compete your PR.

Hey!

You are right, with my PR, you have to know the actual queue name. I have added the config array arguments_delay to the queue options. This way it is possible to change settings per queue.

In my case a transport wide setting would be sufficient as well though. I don't know if anybody actually requires this config on queue level. Your PR as based on 6.3 and includes a test case, I'll close mine.

@fwolfsjaeger fwolfsjaeger deleted the amqp-messenger-quorum-6.2 branch December 12, 2022 10:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Messenger][AMQP] Support for RabbitMQ Quorum Queues in delayed queues
4 participants