Support consumer priority in AMQP #11705
Merged
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.
Arguments
rabbitmq:stream-offset-spec
,rabbitmq:stream-filter
,rabbitmq:stream-match-unfiltered
are set in thefilter
field of theSource
.This makes sense for these consumer arguments because:
Consumer priority is not really such a predicate.
Therefore, it makes more sense to set consumer priority in the
properties
field of theAttach
frame.We call the key
rabbitmq:priority
which maps to consumer argumentx-priority
.While AMQP 0.9.1 consumers are allowed to set any integer data type for the priority level, this commit decides to enforce an
int
value (range -(2^31) to 2^31 - 1 inclusive).Consumer priority levels outside of this range are not needed in practice.