-
Notifications
You must be signed in to change notification settings - Fork 3.9k
Convert AMQP 1.0 props and app props to AMQP 0.9.1 props and headers (backport #10037) #11729
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
Conversation
Cherry-pick of 8e954ff has failed:
To fix up this pull request, you can check it out locally. See documentation: https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/checking-out-pull-requests-locally |
- Timestamps are milliseconds in AMQP 1.0, but in AMQP 0.9.1 it is seconds. Fixed by multiplying the timestamp by 1 000. - Shovel crashed if user_id was set in the message because the encoding was as utf8 while it should be a byte array. - Negative integers were encoded as integers - therefore leading to incorrect positive values. - Float values were not supported by the client. - Fixed priority header encoding in AMQP 1.0. It was set as uint but it should be ubyte. - Priority of the message is now in the Headers instead of Application Properties. This is potentially a breaking change. Fixes: #7508 (cherry picked from commit 8e954ff)
78ec03a
to
f5b1f4e
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Build is failing.
In line with internal RabbitMQ behaviour AMQP defaults to durable messages.
@michaelklishin I have compared the code changes to what was applied to 3.12.11 & 3.13.5 and they seem correct however 3 tests are failing. The logs for these tests have expired so I can't debug further. Is it possible for you to refresh the tests so I can continue trying to resolve this. |
IIRC we agreed that for RabbitMQ 4.x, instead of AMQP 1.0 shovels introducing their own conversion rules as done in this PR, they should use the Advantages:
|
Hi,
As requested in #10022 this is a backport to 3.12.x.
The configuration option was removed and now all the properties are always converted to headers or other appropriate properties.
The priority was moved to the Header section according to AMQP 1.0 (section 3.2.1)
Fixes: #7508
Types of Changes
What types of changes does your code introduce to this project?
Put an
x
in the boxes that applyChecklist
Put an
x
in the boxes that apply.You can also fill these out after creating the PR.
If you're unsure about any of them, don't hesitate to ask on the mailing list.
We're here to help!
This is simply a reminder of what we are going to look for before merging your code.
CONTRIBUTING.md
documentThis is an automatic backport of pull request #10037 done by [Mergify](https://mergify.com).