I was able to reproduce this in exactly the same way with 2.8.6 and Erlang R15B01.<br><br>Here's the log from rabbit@play.log. When play2 goes down and comes back up, the 'unit_test' queue (the only queue with messages) disappears.<br>
<br>=INFO REPORT==== 24-Aug-2012::10:29:06 ===<br>rabbit on node rabbit@play2 down<br><br>=INFO REPORT==== 24-Aug-2012::10:29:06 ===<br>Mirrored-queue (queue 'unit_test' in vhost '/'): Slave <rabbit@play.1.261.0> saw deaths of mirrors <rabbit@play2.2.2550.0> <br>
<br>=INFO REPORT==== 24-Aug-2012::10:29:12 ===<br>rabbit on node rabbit@play2 up<br><br>=ERROR REPORT==== 24-Aug-2012::10:29:12 ===<br>** Generic server <0.261.0> terminating<br>** Last message in was {'$gen_cast',{gm,{length,3}}}<br>
** When Server state == {state,<br> {amqqueue,<br> {resource,<<"/">>,queue,<<"unit_test">>},<br> true,false,none,<br>
[{<<"x-ha-policy">>,longstr,<<"all">>}],<br> <3299.2457.0>,<br> [<3298.2550.0>],<br> all},<br>
<0.262.0>,<3299.2457.0>,rabbit_variable_queue,<br> {vqstate,<br> {0,{[],[]}},<br> {0,{[],[]}},<br> {delta,undefined,0,undefined},<br>
{0,{[],[]}},<br> {0,{[],[]}},<br> 0,<br> {0,nil},<br> undefined,<br> {0,nil},<br>
{qistate,<br> "/home/mpietrek/work/var/lib/rabbit@play/queues/5CPQWZ6GS6L07B10CDNMTM42C",<br> {{dict,0,16,16,8,80,48,<br> {[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]},<br>
{{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],<br> []}}},<br> []},<br> undefined,0,262144,<br> #Fun<rabbit_variable_queue.2.121033067>,<br>
{0,nil}},<br> {{client_msstate,msg_store_persistent,<br> <<61,29,142,33,178,251,167,19,151,135,213,43,204,<br> 197,156,123>>,<br>
{dict,0,16,16,8,80,48,<br> {[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]},<br> {{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],<br> []}}},<br>
{state,327753,<br> "/home/mpietrek/work/var/lib/rabbit@play/msg_store_persistent"},<br> rabbit_msg_store_ets_index,<br> "/home/mpietrek/work/var/lib/rabbit@play/msg_store_persistent",<br>
<0.255.0>,331850,323656,335947,340044},<br> {client_msstate,msg_store_transient,<br> <<41,125,255,66,12,1,141,122,87,67,196,42,155,134,<br>
88,81>>,<br> {dict,0,16,16,8,80,48,<br> {[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]},<br> {{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],<br>
[]}}},<br> {state,307268,<br> "/home/mpietrek/work/var/lib/rabbit@play/msg_store_transient"},<br> rabbit_msg_store_ets_index,<br>
"/home/mpietrek/work/var/lib/rabbit@play/msg_store_transient",<br> <0.250.0>,311365,303144,315462,319559}},<br> true,0,#Fun<rabbit_mirror_queue_slave.1.52898136>,0,<br>
0,infinity,0,0,0,0,0,<br> {rates,<br> {{1345,829346,423057},0},<br> {{1345,829346,423057},0},<br> 0.0,0.0,<br>
{1345,829348,736018}},<br> {0,nil},<br> {0,nil},<br> {0,nil},<br> {0,nil},<br> 0,0,<br>
{rates,<br> {{1345,829346,423057},0},<br> {{1345,829346,423057},0},<br> 0.0,0.0,<br> {1345,829348,736018}}},<br>
undefined,undefined,<br> {dict,0,16,16,8,80,48,<br> {[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]},<br> {{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]}}},<br>
{dict,0,16,16,8,80,48,<br> {[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]},<br> {{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]}}},<br> 0,<br>
{dict,0,16,16,8,80,48,<br> {[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]},<br> {{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]}}},<br> {dict,0,16,16,8,80,48,<br>
{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]},<br> {{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]}}},<br> true}<br>** Reason for termination == <br>
** {function_clause,<br> [{rabbit_mirror_queue_slave,set_synchronised,<br> [false,<br> {state,<br> {amqqueue,<br> {resource,<<"/">>,queue,<<"unit_test">>},<br>
true,false,none,<br> [{<<"x-ha-policy">>,longstr,<<"all">>}],<br> <3299.2457.0>,<br> [<3298.2550.0>],<br>
all},<br> <0.262.0>,<3299.2457.0>,rabbit_variable_queue,<br> {vqstate,<br> {0,{[],[]}},<br> {0,{[],[]}},<br> {delta,undefined,0,undefined},<br>
{0,{[],[]}},<br> {0,{[],[]}},<br> 0,<br> {0,nil},<br> undefined,<br> {0,nil},<br> {qistate,<br>
"/home/mpietrek/work/var/lib/rabbit@play/queues/5CPQWZ6GS6L07B10CDNMTM42C",<br> {{dict,0,16,16,8,80,48,<br> {[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],<br>
[]},<br> {{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],<br> []}}},<br> []},<br> undefined,0,262144,<br>
#Fun<rabbit_variable_queue.2.121033067>,<br> {0,nil}},<br> {{client_msstate,msg_store_persistent,<br> <<61,29,142,33,178,251,167,19,151,135,213,43,204,197,<br>
156,123>>,<br> {dict,0,16,16,8,80,48,<br> {[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],<br> []},<br> {{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],<br>
[]}}},<br> {state,327753,<br> "/home/mpietrek/work/var/lib/rabbit@play/msg_store_persistent"},<br> rabbit_msg_store_ets_index,<br>
"/home/mpietrek/work/var/lib/rabbit@play/msg_store_persistent",<br> <0.255.0>,331850,323656,335947,340044},<br> {client_msstate,msg_store_transient,<br>
<<41,125,255,66,12,1,141,122,87,67,196,42,155,134,88,<br> 81>>,<br> {dict,0,16,16,8,80,48,<br> {[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],<br>
[]},<br> {{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],<br> []}}},<br> {state,307268,<br> "/home/mpietrek/work/var/lib/rabbit@play/msg_store_transient"},<br>
rabbit_msg_store_ets_index,<br> "/home/mpietrek/work/var/lib/rabbit@play/msg_store_transient",<br> <0.250.0>,311365,303144,315462,319559}},<br>
true,0,#Fun<rabbit_mirror_queue_slave.1.52898136>,0,0,<br> infinity,0,0,0,0,0,<br> {rates,<br> {{1345,829346,423057},0},<br> {{1345,829346,423057},0},<br>
0.0,0.0,<br> {1345,829348,736018}},<br> {0,nil},<br> {0,nil},<br> {0,nil},<br> {0,nil},<br> 0,0,<br>
{rates,<br> {{1345,829346,423057},0},<br> {{1345,829346,423057},0},<br> 0.0,0.0,<br> {1345,829348,736018}}},<br>
undefined,undefined,<br> {dict,0,16,16,8,80,48,<br> {[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]},<br> {{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]}}},<br>
{dict,0,16,16,8,80,48,<br> {[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]},<br> {{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]}}},<br> 0,<br> {dict,0,16,16,8,80,48,<br>
{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]},<br> {{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]}}},<br> {dict,0,16,16,8,80,48,<br> {[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]},<br>
{{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]}}},<br> true}],<br> []},<br> {rabbit_mirror_queue_slave,process_instruction,2,[]},<br> {rabbit_mirror_queue_slave,handle_cast,2,[]},<br>
{gen_server2,handle_msg,2,[]},<br> {proc_lib,wake_up,3,[{file,"proc_lib.erl"},{line,237}]}]}<br><br><br><br><div class="gmail_quote">On Wed, Aug 22, 2012 at 8:09 PM, Matthias Radestock <span dir="ltr"><<a href="mailto:matthias@rabbitmq.com" target="_blank">matthias@rabbitmq.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Matt,<div class="im"><br>
<br>
On 22/08/12 23:06, Matt Pietrek wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I'm experiencing a consistently reproducible scenario where an HA queue<br>
disappears when a node rejoins the cluster. This is using RabbitMQ 2.8.5<br>
and Erlang R15B01.<br>
</blockquote>
<br></div>
please try reproducing this with 2.8.6.<span class="HOEnZb"><font color="#888888"><br>
<br>
Matthias.<br>
</font></span></blockquote></div><br>