Skip to content

Conversation

@mergify
Copy link

@mergify mergify bot commented Jun 24, 2024

DQT = default queue type.

Determining what queue type should be used is getting more and more involved.

It can come from four different places:

  1. The client (as an x-queue-type argument value) or the HTTP API
  2. Virtual host metadata
  3. Node-wide default from rabbitmq.conf
  4. If all else fails, the fallback ("classic")

In addition, there are two ways to specify a type:

  1. Clients use shortcuts such as "quorum"
  2. Definitions and many places internally use module names such as rabbit_classic_queue

When a client provides no queue type, validation
should take the defaults (virtual host, global,
and the last resort fallback) into account
instead of considering the type to be "undefined".

References #11457 ##11528.


This is an automatic backport of pull request #11541 done by [Mergify](https://mergify.com).

@mergify
Copy link
Author

mergify bot commented Jun 24, 2024

Cherry-pick of f3b7a34 has failed:

On branch mergify/bp/v3.13.x/pr-11541
Your branch is up to date with 'origin/v3.13.x'.

You are currently cherry-picking commit f3b7a346f9.
  (fix conflicts and run "git cherry-pick --continue")
  (use "git cherry-pick --skip" to skip this patch)
  (use "git cherry-pick --abort" to cancel the cherry-pick operation)

Changes to be committed:
	modified:   deps/rabbit/src/rabbit_amqqueue.erl
	modified:   deps/rabbitmq_management/test/stats_SUITE.erl

Unmerged paths:
  (use "git add <file>..." to mark resolution)
	both modified:   deps/rabbit/src/rabbit_queue_type.erl
	both modified:   deps/rabbit/src/rabbit_vhost.erl

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

@michaelklishin
Copy link
Collaborator

@Mergifyio rebase

michaelklishin and others added 4 commits June 24, 2024 10:12
at validation time.

DQT = default queue type.

When a client provides no queue type, validation
should take the defaults (virtual host, global,
and the last resort fallback) into account
instead of considering the type to
be "undefined".

References #11457 ##11528

(cherry picked from commit f3b7a34)

# Conflicts:
#	deps/rabbit/src/rabbit_queue_type.erl
#	deps/rabbit/src/rabbit_vhost.erl
Besides fixing a regression detected by priority_queue_SUITE,
this introduces a drive-by change:

rabbit_priority_queue: avoid an exception when
max priority is a negative value that circumvented validation

(cherry picked from commit 1a48bb7)
@mergify
Copy link
Author

mergify bot commented Jun 24, 2024

rebase

✅ Branch has been successfully rebased

@michaelklishin michaelklishin force-pushed the mergify/bp/v3.13.x/pr-11541 branch from d7283b2 to 5fe4cd7 Compare June 24, 2024 10:12
@michaelklishin michaelklishin deleted the mergify/bp/v3.13.x/pr-11541 branch June 24, 2024 10:18
@michaelklishin
Copy link
Collaborator

Backported to v3.13.x manually.

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.

2 participants