rabbitmq-server icon indicating copy to clipboard operation
rabbitmq-server copied to clipboard

Channel error when a queue process is not available

Open mkuratczyk opened this issue 2 years ago • 0 comments

When a queue is no longer available, eg because the node is being shut down, it may happen that the channel tries to deliver a message to a queue there is no process for. The error looks like this:

** Reason for termination ==
** {{case_clause,{error,{error,noproc}}},
    [{rabbit_channel,deliver_to_queues,2,
                     [{file,"rabbit_channel.erl"},{line,2161}]},
     {rabbit_channel,handle_method,3,
                     [{file,"rabbit_channel.erl"},{line,1325}]},
     {rabbit_channel,handle_cast,2,[{file,"rabbit_channel.erl"},{line,644}]},
     {gen_server2,handle_msg,2,[{file,"gen_server2.erl"},{line,1067}]},
     {proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,226}]}]}

  crasher:
    initial call: rabbit_channel:init/1
    pid: <0.4519.181>
    registered_name: []
    exception exit: {{case_clause,{error,{error,noproc}}},
                     [{rabbit_channel,deliver_to_queues,2,
                                      [{file,"rabbit_channel.erl"},
                                       {line,2161}]},
                      {rabbit_channel,handle_method,3,
                                      [{file,"rabbit_channel.erl"},
                                       {line,1325}]},
                      {rabbit_channel,handle_cast,2,
                                      [{file,"rabbit_channel.erl"},
                                       {line,644}]},
                      {gen_server2,handle_msg,2,
                                   [{file,"gen_server2.erl"},{line,1067}]},
                      {proc_lib,init_p_do_apply,3,
                                [{file,"proc_lib.erl"},{line,226}]}]}
      in function  gen_server2:terminate/3 (gen_server2.erl, line 1183)
    ancestors: [<0.4521.181>,<0.3493.181>,<0.641.181>,<0.643.181>,
                  <0.25127.12>,<0.25126.12>,<0.25125.12>,<0.25123.12>,
                  <0.25121.12>,rabbit_sup,<0.223.0>]
    message_queue_len: 0
    messages: []
    links: [<0.4521.181>]
    dictionary: [{{queue_exchange_stats,
                       {{resource,<<"aae1acb1-f094-4301-a005-aa56e060b514">>,
                            queue,<<"quorum-1635330514037-27-8-1">>},
                        {resource,<<"aae1acb1-f094-4301-a005-aa56e060b514">>,
                            exchange,
                            <<"rabbit.load.generator.topic.1635330514037">>}}},
                   none},
                  {{queue_exchange_stats,
                       {{resource,<<"aae1acb1-f094-4301-a005-aa56e060b514">>,
                            queue,<<"quorum-1635330514037-30-6-1">>},
                        {resource,<<"aae1acb1-f094-4301-a005-aa56e060b514">>,
                            exchange,
                            <<"rabbit.load.generator.topic.1635330514037">>}}},
                   none},
                  {permission_cache_can_expire,false},
                  {{queue_exchange_stats,
                       {{resource,<<"aae1acb1-f094-4301-a005-aa56e060b514">>,
                            queue,<<"quorum-1635330514037-7-2-3">>},
                        {resource,<<"aae1acb1-f094-4301-a005-aa56e060b514">>,
                            exchange,
                            <<"rabbit.load.generator.topic.1635330514037">>}}},
                   none},
                  {{queue_exchange_stats,
                       {{resource,<<"aae1acb1-f094-4301-a005-aa56e060b514">>,
                            queue,<<"quorum-1635330514037-6-4-3">>},
                        {resource,<<"aae1acb1-f094-4301-a005-aa56e060b514">>,
                            exchange,
                            <<"rabbit.load.generator.topic.1635330514037">>}}},
                   none},
                  {channel_operation_timeout,15000},
                  {{credit_to,<0.657.181>},191},
                  {{queue_exchange_stats,
                       {{resource,<<"aae1acb1-f094-4301-a005-aa56e060b514">>,
                            queue,<<"quorum-1635330514037-32-7-3">>},
                        {resource,<<"aae1acb1-f094-4301-a005-aa56e060b514">>,

The error is returned here: https://github.com/rabbitmq/rabbitmq-server/blob/master/deps/rabbit/src/rabbit_fifo_client.erl#L168.

mkuratczyk avatar Nov 02 '21 09:11 mkuratczyk