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

Khepri integration: vhost can crash with many bindings

Open mkuratczyk opened this issue 3 years ago • 0 comments

NOTE: this issue is related to an unreleased Khepri integration (branch khepri-queues). After declaring 1 queue and 1 million topic bindings, vhost crashed and would not recover. Full log attached.

 Unable to recover vhost <<"/">> data. Reason {badmatch,{error,not_found}}
    Stacktrace [{rabbit_binding,recover_semi_durable_route,7,
                                [{file,"rabbit_binding.erl"},{line,98}]},
                {maps,foreach_1,2,[{file,"maps.erl"},{line,380}]},
                {rabbit_binding,recover,2,
                                [{file,"rabbit_binding.erl"},{line,88}]},
                {timer,tc,1,[{file,"timer.erl"},{line,166}]},
                {rabbit_vhost,recover,1,[{file,"rabbit_vhost.erl"},{line,96}]},
                {rabbit_vhost_process,init,1,
                                      [{file,"rabbit_vhost_process.erl"},
                                       {line,47}]},
                {gen_server2,init_it,6,[{file,"gen_server2.erl"},{line,565}]},
                {proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,226}]}]
       supervisor: {<0.9206.0>,rabbit_vhost_sup_wrapper}
       errorContext: start_error
       reason: {badmatch,{error,not_found}}
       offender: [{pid,undefined},
                  {id,rabbit_vhost_process},
                  {mfargs,{rabbit_vhost_process,start_link,[<<"/">>]}},
                  {restart_type,permanent},
                  {significant,false},
                  {shutdown,300000},
                  {child_type,worker}]

   Stopping message store for directory '/home/mkuratczyk/data/rabbitmq-test-instances/rabbit@kura/mnesia/rabbit@kura/msg_stores/vhosts/628WB79CIFDYO9LJI6DKMI09L/msg_store_persistent'
     crasher:
       initial call: rabbit_vhost_process:init/1
       pid: <0.9208.0>
       registered_name: []
       exception exit: {badmatch,{error,not_found}}
         in function  gen_server2:init_it/6 (gen_server2.erl, line 600)
       ancestors: [<0.9206.0>,rabbit_vhost_sup_sup,rabbit_sup,<0.236.0>]
       message_queue_len: 0
       messages: []
       links: [<0.9206.0>,<0.9227.0>]
       dictionary: [{{xtype_to_module,direct},rabbit_exchange_type_direct},
                     {{xtype_to_module,headers},rabbit_exchange_type_headers},
                     {{xtype_to_module,topic},rabbit_exchange_type_topic},
                     {{xtype_to_module,fanout},rabbit_exchange_type_fanout}]
       trap_exit: true
       status: running
       heap_size: 6772
       stack_size: 29
       reductions: 547204
     neighbours:
       neighbour:
         pid: <0.9227.0>
         registered_name: []
         initial call: gatherer:init/1
         current_function: {erlang,hibernate,3}
         ancestors: [<0.9208.0>,<0.9206.0>,rabbit_vhost_sup_sup,rabbit_sup,
                     <0.236.0>]
         message_queue_len: 0
         links: [<0.9208.0>]
         trap_exit: false
         status: waiting
         heap_size: 131
         stack_size: 1
         reductions: 183
         current_stacktrace: []

[email protected]

mkuratczyk avatar Jun 24 '22 12:06 mkuratczyk