summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Klishin <klishinm@vmware.com>2021-10-21 00:38:11 +0300
committerGitHub <noreply@github.com>2021-10-21 00:38:11 +0300
commit8ad8afac38de5159d10a30c6eaa8e5497ec1c965 (patch)
tree8413cbbf57f29790d7555c30142def0d891a27f5
parent52492da327d35b9e679a4462bb2f6ffd5f30286f (diff)
parent141f95598e7d42219db486c688c7a3466398c008 (diff)
downloadrabbitmq-server-git-8ad8afac38de5159d10a30c6eaa8e5497ec1c965.tar.gz
Merge pull request #3576 from rabbitmq/coordinator-error-handling
Handling of `stream_not_found` return value when init a stream client
-rw-r--r--deps/rabbit/src/rabbit_channel.erl5
-rw-r--r--deps/rabbit/src/rabbit_stream_queue.erl2
2 files changed, 7 insertions, 0 deletions
diff --git a/deps/rabbit/src/rabbit_channel.erl b/deps/rabbit/src/rabbit_channel.erl
index d1059b4cbe..e50fba8596 100644
--- a/deps/rabbit/src/rabbit_channel.erl
+++ b/deps/rabbit/src/rabbit_channel.erl
@@ -2176,6 +2176,11 @@ deliver_to_queues({Delivery = #delivery{message = Message = #basic_message{ex
ok
end,
State;
+ {error, {stream_not_found, Resource}} ->
+ rabbit_misc:protocol_error(
+ resource_error,
+ "Stream not found for ~s",
+ [rabbit_misc:rs(Resource)]);
{error, {coordinator_unavailable, Resource}} ->
rabbit_misc:protocol_error(
resource_error,
diff --git a/deps/rabbit/src/rabbit_stream_queue.erl b/deps/rabbit/src/rabbit_stream_queue.erl
index da1609be46..ed11b5083f 100644
--- a/deps/rabbit/src/rabbit_stream_queue.erl
+++ b/deps/rabbit/src/rabbit_stream_queue.erl
@@ -652,6 +652,8 @@ init(Q) when ?is_amqqueue(Q) ->
leader = Leader,
writer_id = WriterId,
soft_limit = SoftLimit}};
+ {ok, stream_not_found, _} ->
+ {error, stream_not_found};
{error, coordinator_unavailable} = E ->
rabbit_log:warning("Failed to start stream client ~p: coordinator unavailable",
[rabbit_misc:rs(QName)]),