Skip to content

[Doctrine][Messenger] Prevents multiple TransportMessageIdStamp being stored in envelope #59362

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

Merged

Conversation

rtreffler
Copy link
Contributor

Q A
Branch? 6.4
Bug fix? yes
New feature? no
Deprecations? no
Issues Fix #49637
License MIT
  • Multiple TransportMessageIdStamps can heavily increase message size on multiple retries, to prevent that when message is fetched existing TransportMessageIdStamps are discarded before new one is added.
  • Replaces static calls to \PHPUnit\Framework\TestCase::expectException in DoctrineReceiverTest test with instance calls.

@carsonbot
Copy link

Hey!

I see that this is your first PR. That is great! Welcome!

Symfony has a contribution guide which I suggest you to read.

In short:

  • Always add tests
  • Keep backward compatibility (see https://symfony.com/bc).
  • Bug fixes must be submitted against the lowest maintained branch where they apply (see https://symfony.com/releases)
  • Features and deprecations must be submitted against the 7.3 branch.

Review the GitHub status checks of your pull request and try to solve the reported issues. If some tests are failing, try to see if they are failing because of this change.

When two Symfony core team members approve this change, it will be merged and you will become an official Symfony contributor!
If this PR is merged in a lower version branch, it will be merged up to all maintained branches within a few days.

I am going to sit back now and wait for the reviews.

Cheers!

Carsonbot

@rtreffler rtreffler force-pushed the fix-retries-cause-growing-envelope-issue-49637 branch from ddab1e5 to f44c5f4 Compare January 5, 2025 17:17
… stored in envelope

- Multiple TransportMessageIdStamps can heavily increase message size on multiple retries, to prevent that when message is fetched existing TransportMessageIdStamps are discarded before new one is added.
- Replaces static calls to \PHPUnit\Framework\TestCase::expectException in DoctrineReceiverTest test with instance calls.

Fixes: symfony#49637
@rtreffler rtreffler force-pushed the fix-retries-cause-growing-envelope-issue-49637 branch from f44c5f4 to 0ad6239 Compare January 5, 2025 18:47
@fabpot
Copy link
Member

fabpot commented Jan 6, 2025

Thank you @rtreffler.

@fabpot fabpot merged commit dc7b96c into symfony:6.4 Jan 6, 2025
11 checks passed
@rtreffler rtreffler deleted the fix-retries-cause-growing-envelope-issue-49637 branch January 6, 2025 10:27
This was referenced Jan 29, 2025
renovate bot added a commit to Runroom/archetype-symfony that referenced this pull request Jan 29, 2025
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [symfony/doctrine-messenger](https://symfony.com)
([source](https://redirect.github.com/symfony/doctrine-messenger)) |
`7.2.2` -> `7.2.3` |
[![age](https://developer.mend.io/api/mc/badges/age/packagist/symfony%2fdoctrine-messenger/7.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/packagist/symfony%2fdoctrine-messenger/7.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/packagist/symfony%2fdoctrine-messenger/7.2.2/7.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/packagist/symfony%2fdoctrine-messenger/7.2.2/7.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [symfony/framework-bundle](https://symfony.com)
([source](https://redirect.github.com/symfony/framework-bundle)) |
`7.2.2` -> `7.2.3` |
[![age](https://developer.mend.io/api/mc/badges/age/packagist/symfony%2fframework-bundle/7.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/packagist/symfony%2fframework-bundle/7.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/packagist/symfony%2fframework-bundle/7.2.2/7.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/packagist/symfony%2fframework-bundle/7.2.2/7.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [symfony/mailer](https://symfony.com)
([source](https://redirect.github.com/symfony/mailer)) | `7.2.0` ->
`7.2.3` |
[![age](https://developer.mend.io/api/mc/badges/age/packagist/symfony%2fmailer/7.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/packagist/symfony%2fmailer/7.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/packagist/symfony%2fmailer/7.2.0/7.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/packagist/symfony%2fmailer/7.2.0/7.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [symfony/messenger](https://symfony.com)
([source](https://redirect.github.com/symfony/messenger)) | `7.2.1` ->
`7.2.3` |
[![age](https://developer.mend.io/api/mc/badges/age/packagist/symfony%2fmessenger/7.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/packagist/symfony%2fmessenger/7.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/packagist/symfony%2fmessenger/7.2.1/7.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/packagist/symfony%2fmessenger/7.2.1/7.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [symfony/runtime](https://symfony.com)
([source](https://redirect.github.com/symfony/runtime)) | `7.2.0` ->
`7.2.3` |
[![age](https://developer.mend.io/api/mc/badges/age/packagist/symfony%2fruntime/7.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/packagist/symfony%2fruntime/7.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/packagist/symfony%2fruntime/7.2.0/7.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/packagist/symfony%2fruntime/7.2.0/7.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [symfony/security-bundle](https://symfony.com)
([source](https://redirect.github.com/symfony/security-bundle)) |
`7.2.2` -> `7.2.3` |
[![age](https://developer.mend.io/api/mc/badges/age/packagist/symfony%2fsecurity-bundle/7.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/packagist/symfony%2fsecurity-bundle/7.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/packagist/symfony%2fsecurity-bundle/7.2.2/7.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/packagist/symfony%2fsecurity-bundle/7.2.2/7.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [symfony/web-profiler-bundle](https://symfony.com)
([source](https://redirect.github.com/symfony/web-profiler-bundle)) |
`7.2.2` -> `7.2.3` |
[![age](https://developer.mend.io/api/mc/badges/age/packagist/symfony%2fweb-profiler-bundle/7.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/packagist/symfony%2fweb-profiler-bundle/7.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/packagist/symfony%2fweb-profiler-bundle/7.2.2/7.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/packagist/symfony%2fweb-profiler-bundle/7.2.2/7.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>symfony/doctrine-messenger
(symfony/doctrine-messenger)</summary>

###
[`v7.2.3`](https://redirect.github.com/symfony/doctrine-messenger/compare/v7.2.2...v7.2.3)

[Compare
Source](https://redirect.github.com/symfony/doctrine-messenger/compare/v7.2.2...v7.2.3)

</details>

<details>
<summary>symfony/framework-bundle (symfony/framework-bundle)</summary>

###
[`v7.2.3`](https://redirect.github.com/symfony/framework-bundle/releases/tag/v7.2.3)

[Compare
Source](https://redirect.github.com/symfony/framework-bundle/compare/v7.2.2...v7.2.3)

**Changelog**
(symfony/framework-bundle@v7.2.2...v7.2.3)

- bug
[symfony/symfony#58889](https://redirect.github.com/symfony/symfony/issues/58889)
\[Serializer] Handle default context in Serializer
([@&#8203;Valmonzo](https://redirect.github.com/Valmonzo))
- bug
[symfony/symfony#59625](https://redirect.github.com/symfony/symfony/issues/59625)
\[FrameworkBundle] Add missing `not-compromised-password` entry in XSD
(@&#8203;alexandre-daubois)
- bug
[symfony/symfony#59581](https://redirect.github.com/symfony/symfony/issues/59581)
\[Cache] Don't clear system caches on `cache:clear`
(@&#8203;nicolas-grekas)
- bug
[symfony/symfony#59579](https://redirect.github.com/symfony/symfony/issues/59579)
\[FrameworkBundle] Fix patching refs to the tmp warmup dir in files
generated by optional cache warmers
([@&#8203;nicolas-grekas](https://redirect.github.com/nicolas-grekas))
- bug
[symfony/symfony#59515](https://redirect.github.com/symfony/symfony/issues/59515)
\[FrameworkBundle] Fix wiring ConsoleProfilerListener
([@&#8203;nicolas-grekas](https://redirect.github.com/nicolas-grekas))
- bug
[symfony/symfony#59136](https://redirect.github.com/symfony/symfony/issues/59136)
\[DependencyInjection] Reset env vars with `kernel.reset`
(@&#8203;faizanakram99)
- bug
[symfony/symfony#59403](https://redirect.github.com/symfony/symfony/issues/59403)
\[FrameworkBundle]\[HttpFoundation] Reset Request's formats using the
service resetter
([@&#8203;nicolas-grekas](https://redirect.github.com/nicolas-grekas))
- bug
[symfony/symfony#59188](https://redirect.github.com/symfony/symfony/issues/59188)
\[HttpClient] Fix `reset()` not called on decorated clients
(@&#8203;HypeMC)

</details>

<details>
<summary>symfony/mailer (symfony/mailer)</summary>

###
[`v7.2.3`](https://redirect.github.com/symfony/mailer/compare/v7.2.0...v7.2.3)

[Compare
Source](https://redirect.github.com/symfony/mailer/compare/v7.2.0...v7.2.3)

</details>

<details>
<summary>symfony/messenger (symfony/messenger)</summary>

###
[`v7.2.3`](https://redirect.github.com/symfony/messenger/releases/tag/v7.2.3)

[Compare
Source](https://redirect.github.com/symfony/messenger/compare/v7.2.1...v7.2.3)

**Changelog**
(symfony/messenger@v7.2.2...v7.2.3)

- bug
[symfony/symfony#59513](https://redirect.github.com/symfony/symfony/issues/59513)
\[Messenger ] Extract retry delay from nested
`RecoverableExceptionInterface` (@&#8203;AydinHassan)
- bug
[symfony/symfony#59508](https://redirect.github.com/symfony/symfony/issues/59508)
\[Messenger] \[AMQP] Improve AMQP connection issues
([@&#8203;AurelienPillevesse](https://redirect.github.com/AurelienPillevesse))
- bug
[symfony/symfony#59352](https://redirect.github.com/symfony/symfony/issues/59352)
\[Messenger] Fix `TransportMessageIdStamp` not always added
(@&#8203;HypeMC)
- bug
[symfony/symfony#59362](https://redirect.github.com/symfony/symfony/issues/59362)
\[Doctrine]\[Messenger] Prevents multiple TransportMessageIdStamp being
stored in envelope
([@&#8203;rtreffler](https://redirect.github.com/rtreffler))

</details>

<details>
<summary>symfony/runtime (symfony/runtime)</summary>

###
[`v7.2.3`](https://redirect.github.com/symfony/runtime/releases/tag/v7.2.3)

[Compare
Source](https://redirect.github.com/symfony/runtime/compare/v7.2.0...v7.2.3)

**Changelog**
(symfony/runtime@v7.2.2...v7.2.3)

-   no significant changes

</details>

<details>
<summary>symfony/security-bundle (symfony/security-bundle)</summary>

###
[`v7.2.3`](https://redirect.github.com/symfony/security-bundle/releases/tag/v7.2.3)

[Compare
Source](https://redirect.github.com/symfony/security-bundle/compare/v7.2.2...v7.2.3)

**Changelog**
(symfony/security-bundle@v7.2.2...v7.2.3)

- bug
[symfony/symfony#59339](https://redirect.github.com/symfony/symfony/issues/59339)
\[SecurityBundle] Remove outdated guard from security xsd schema
([@&#8203;chalasr](https://redirect.github.com/chalasr))
- bug
[symfony/symfony#59342](https://redirect.github.com/symfony/symfony/issues/59342)
\[SecurityBundle] Do not pass traceable authenticators to
`security.helper` (@&#8203;MatTheCat)

</details>

<details>
<summary>symfony/web-profiler-bundle
(symfony/web-profiler-bundle)</summary>

###
[`v7.2.3`](https://redirect.github.com/symfony/web-profiler-bundle/releases/tag/v7.2.3)

[Compare
Source](https://redirect.github.com/symfony/web-profiler-bundle/compare/v7.2.2...v7.2.3)

**Changelog**
(symfony/web-profiler-bundle@v7.2.2...v7.2.3)

- bug
[symfony/symfony#59292](https://redirect.github.com/symfony/symfony/issues/59292)
\[WebProfilerBundle] Fix event delegation on links inside toggles
([@&#8203;MatTheCat](https://redirect.github.com/MatTheCat))
- bug
[symfony/symfony#59229](https://redirect.github.com/symfony/symfony/issues/59229)
\[WebProfilerBundle] fix loading of toolbar stylesheet
([@&#8203;alexislefebvre](https://redirect.github.com/alexislefebvre))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about these
updates again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/Runroom/archetype-symfony).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMjUuMSIsInVwZGF0ZWRJblZlciI6IjM5LjEyNS4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
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.

5 participants