summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIliia Khaprov <i.khaprov@gmail.com>2022-08-01 12:34:10 +0200
committerIliia Khaprov <i.khaprov@gmail.com>2022-08-01 15:01:13 +0200
commit0f541f443f23af031e16f0e5eed3c0fa0e71db41 (patch)
treea89dc97b77f87c720a1be493f7ccfcab14e54c03
parent5ecb546ef59ef8173977e69e3146da84e0dac094 (diff)
downloadrabbitmq-server-git-0f541f443f23af031e16f0e5eed3c0fa0e71db41.tar.gz
close #5399, set default vhost queue type from import's metadata
-rw-r--r--deps/rabbit/src/rabbit_definitions.erl3
-rw-r--r--deps/rabbit/test/definition_import_SUITE.erl1
-rw-r--r--deps/rabbit/test/definition_import_SUITE_data/case16.json1
3 files changed, 4 insertions, 1 deletions
diff --git a/deps/rabbit/src/rabbit_definitions.erl b/deps/rabbit/src/rabbit_definitions.erl
index f5022eb8b9..79c7424f8a 100644
--- a/deps/rabbit/src/rabbit_definitions.erl
+++ b/deps/rabbit/src/rabbit_definitions.erl
@@ -660,8 +660,9 @@ add_vhost(VHost, ActingUser) ->
Metadata = rabbit_data_coercion:atomize_keys(maps:get(metadata, VHost, #{})),
Description = maps:get(description, VHost, maps:get(description, Metadata, <<"">>)),
Tags = maps:get(tags, VHost, maps:get(tags, Metadata, [])),
+ DefaultQueueType = maps:get(default_queue_type, Metadata, undefined),
- rabbit_vhost:put_vhost(Name, Description, Tags, IsTracingEnabled, ActingUser).
+ rabbit_vhost:put_vhost(Name, Description, Tags, DefaultQueueType, IsTracingEnabled, ActingUser).
add_permission(Permission, ActingUser) ->
rabbit_auth_backend_internal:set_permissions(maps:get(user, Permission, undefined),
diff --git a/deps/rabbit/test/definition_import_SUITE.erl b/deps/rabbit/test/definition_import_SUITE.erl
index c949b6b08a..c3a84ccee6 100644
--- a/deps/rabbit/test/definition_import_SUITE.erl
+++ b/deps/rabbit/test/definition_import_SUITE.erl
@@ -263,6 +263,7 @@ import_case16(Config) ->
rabbit_ct_helpers:await_condition(VHostIsImported, 20000),
VHostRec = vhost_lookup(Config, VHost),
?assertEqual(<<"A case16 description">>, vhost:get_description(VHostRec)),
+ ?assertEqual(<<"quorum">>, vhost:get_default_queue_type(VHostRec)),
?assertEqual([multi_dc_replication,ab,cde], vhost:get_tags(VHostRec)),
ok.
diff --git a/deps/rabbit/test/definition_import_SUITE_data/case16.json b/deps/rabbit/test/definition_import_SUITE_data/case16.json
index c313b72a33..f7275a1a3c 100644
--- a/deps/rabbit/test/definition_import_SUITE_data/case16.json
+++ b/deps/rabbit/test/definition_import_SUITE_data/case16.json
@@ -45,6 +45,7 @@
{
"limits": [],
"metadata": {
+ "default_queue_type":"quorum",
"description": "A case16 description",
"tags": [
"multi_dc_replication",