NServiceBus
NServiceBus copied to clipboard
Adjust the transport seam to ensure that incoming message modifications can't persist between immediate retry attempts
If the immediate retries are implemented in-memory within the transport the current transport seam makes it possible to modify the incoming message so that the effects of the modification are visible in the subsequent attempts:
- Headers dictionary can modifications are retained
- Substituting whole message body is handled properly (changes are reverted) but substituting individual bytes in the body byte array is visible in the subsequent reties
This work was prioritized by KtLO but couldn't be worked on because it is a breaking change. KtLO would like to have this considered and prioritized for the next major of Core.
(adding this to the v8 milestone for now as KtLO expressed willingness to make this a priority once the v8 window opens up)