[#2271] Update Producer deliveryDelay behavior to only thrown when non-zero and always return zero - #2272
Open
mattrpav wants to merge 1 commit into
Open
[#2271] Update Producer deliveryDelay behavior to only thrown when non-zero and always return zero#2272mattrpav wants to merge 1 commit into
mattrpav wants to merge 1 commit into
Conversation
…hen non-zero and always return zero
cshannon
reviewed
Aug 3, 2026
cshannon
left a comment
Contributor
There was a problem hiding this comment.
Do we also need to change the setter? If it's only querying is the getter enough?
| @Override | ||
| public long getDeliveryDelay() { | ||
| throw new UnsupportedOperationException("getDeliveryDelay() is not supported"); | ||
| return 0L; |
Contributor
|
Also, why don't we just roll back the version that is reporter? This fix is a mostly a workaround that shouldn't be necessary, if we just roll back the major version to 1 like it should be then that also fixes it. |
Contributor
cshannon
requested changes
Aug 4, 2026
| @Override | ||
| public void setDeliveryDelay(long deliveryDelay) throws JMSException { | ||
| throw new UnsupportedOperationException("setDeliveryDelay() is not supported"); | ||
| if (deliveryDelay != 0) { |
Contributor
There was a problem hiding this comment.
My preference would be to leave the setter alone. I don't think we should allow using it as it's not supported, the getter can just return 0 for now, meaning there's just no delay.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Change
This change modifies the in-progress behavior of deliveryDelay support by allowing all zero (0) values to continue to be processed. Zero (0) indicates no deliveryDelay, so the fact that this is hard-coded is no problem, as no value is going across the wire.
The UnsupportedOperationException is now thrown only when a non-zero value is specified on the setDeliveryDelay.
Driving factor
The messagehub jms pool queries the value, even when unused to retain state between instances of being borrowed and is gated around the ConnectionMetaData major and minor version. Since we changed those values, accessing of setDeliveryDelay is ungated and all Spring applications are unable to send JMS messages using ActiveMQ v6.3.0.