- Issue created by @lussoluca
- 🇦🇺Australia dpi Perth, Australia
Keen to see something like this, I'd support whatever comes in the official Symfony Messenger project but don't see a need to preempt it.
Could a solution be incubated in a separate project that relies on any MR thats available over there?
- 🇮🇹Italy lussoluca Italy
Yes, of course, we can do that in a separate project.
Something like sm_deduplicate ?
- 🇮🇹Italy lussoluca Italy
@dpi I've pushed a new (sandbox) project for sm_deduplicate: https://www.drupal.org/sandbox/lussoluca/3481678 →
- 🇦🇺Australia dpi Perth, Australia
Looks good, curious about the range of time and how that works and is documented.
- 🇮🇹Italy lussoluca Italy
> It seems it will dedupe for a short range of time, but not over say, an hour.
By default, the lock is set to last 5 minutes (300 seconds), but you can configure it when you apply the stamp to the envelope:
new LockStamp(\hash('sha256', \serialize($message)), 3600)
We need to write extensive documentation about how it works.
- 🇦🇺Australia dpi Perth, Australia
I see https://github.com/symfony/symfony/pull/54141 made it into messenger 7.3
Per https://symfony.com/blog/new-in-symfony-7-3-messenger-improvements#dedup...
We can un-postpone this feature if you have bandwidth.
--
For release after 📌 Drupal SQL/rate limiter/retry-failed/command iteration Active iteration.
We'll need to increase minimum messenger constraints.
- 🇮🇹Italy lussoluca Italy
Yes, I saw the announcement. After the #3531660: Drupal SQL/rate limiter/retry-failed/command iteration, I can work on it.
It is one of the missing pieces to replace the core's Queue API (and the advanced queue → module)