rabbitmq-server
rabbitmq-server copied to clipboard
Khepri integration: vhost can crash with many bindings
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: []