From 25587601d2904d01fd44a53b35a0211d6291e7f7 Mon Sep 17 00:00:00 2001 From: Michael Davis Date: Mon, 6 Oct 2025 18:05:23 -0400 Subject: [PATCH] rabbitmq_streams: Check rabbit_queue_types is_enabled/0 during declare (#14699) `rabbit_amqqueue:declare/7` consults the `is_enabled/0` callback of `rabbit_queue_type` before attempting to create a queue. `rabbit_stream_manager` emulates `rabbit_amqqueue:declare/7` rather than calling it directly. To align with the `is_enabled/0` check in `rabbit_amqqueue:declare/7`, `rabbit_stream_manager` needs to check the callback during stream creation. (cherry picked from commit 1c264fa471f8e9905ce5d369a112ccd761eb81fa) --- deps/rabbitmq_stream/src/rabbit_stream_manager.erl | 3 +++ 1 file changed, 3 insertions(+) diff --git a/deps/rabbitmq_stream/src/rabbit_stream_manager.erl b/deps/rabbitmq_stream/src/rabbit_stream_manager.erl index 598da4a768ab..d5500de2a455 100644 --- a/deps/rabbitmq_stream/src/rabbit_stream_manager.erl +++ b/deps/rabbitmq_stream/src/rabbit_stream_manager.erl @@ -47,10 +47,13 @@ create(VirtualHost, Reference, Arguments, Username) -> StreamQueueArguments = stream_queue_arguments(Arguments), maybe ok ?= validate_stream_queue_arguments(StreamQueueArguments), + true ?= rabbit_stream_queue:is_enabled(), do_create_stream(VirtualHost, Reference, StreamQueueArguments, Username) else error -> {error, validation_failed}; + false -> + {error, validation_failed}; {error, _} = Err -> Err end.