<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
Hello.<br>
<br>
I have some unpleasant issues while clustering disc nodes.<br>
Two brokers located on two hosts.<br>
Steps to reproduce:<br>
<br>
1. Cluster <b>second</b> machine <b>with first</b> as disc node.
(RABBITMQ_NODENAME=wosnfs).<br>
<tt>[root@epbyminw2482t3 ~]# rabbitmqctl stop_app &&
rabbitmqctl reset && rabbitmqctl cluster wosnfs@`hostname
-s` wosnfs@epbyminw2482t2 && rabbitmqctl start_app</tt><br>
<br>
2. Remove first node<br>
<tt>[root@epbyminw2482t2]# rabbitmqctl stop_app &&
rabbitmqctl cluster wosnfs@`hostname -s` && rabbitmqctl
reset && rabbitmqctl start_app</tt><br>
<br>
3. Restart rabbitmq-server service on second node.<br>
<tt>[root@epbyminw2482t3 ~]# service rabbitmq-server restart<br>
Restarting rabbitmq-server: FAILED - check
/var/log/rabbitmq/startup_{log, _err}<br>
rabbitmq-server.<br>
<br>
[root@epbyminw2482t3 ~]# cat /var/log/rabbitmq/startup_err<br>
Erlang has closed<br>
<br>
Crash dump was written to: erl_crash.dump<br>
Kernel pid terminated (application_controller)
({application_start_failure,rabbit,{bad_return,{{rabbit,start,[normal,[]]},{'EXIT',{rabbit,failure_during_boot}}}}})<br>
[root@epbyminw2482t3 ~]# cat /var/log/rabbitmq/startup_log<br>
Activating RabbitMQ plugins ...<br>
0 plugins activated:<br>
<br>
<i><-CUT-></i><br>
erlang version : 5.8.4<br>
<br>
-- rabbit boot start<br>
starting file handle cache
server ...done<br>
starting worker
pool ...done<br>
starting
database
...BOOT ERROR: FAILED<br>
Reason: {error,<br>
{unable_to_join_cluster,<br>
[wosnfs@epbyminw2482t3,wosnfs@epbyminw2482t2],<br>
{merge_schema_failed,<br>
"Bad cookie in table definition
mirrored_sup_childspec: wosnfs@epbyminw2482t3 =
{cstruct,mirrored_sup_childspec,ordered_set,[wosnfs@epbyminw2482t3],[],[],0,read_write,false,[],[],false,mirrored_sup_childspec,[key,mirroring_pid,childspec],[],[],{{1327,663993,999525},<b>wosnfs@epbyminw2482t2</b>},{{3,1},{wosnfs@epbyminw2482t3,{1327,664433,471064}}}},
<b>wosnfs@epbyminw2482t2</b> =
{cstruct,mirrored_sup_childspec,ordered_set,[<b>wosnfs@epbyminw2482t2</b>],[],[],0,read_write,false,[],[],false,mirrored_sup_childspec,[key,mirroring_pid,childspec],[],[],{{1327,664434,761441},<b>wosnfs@epbyminw2482t2</b>},{{2,0},[]}}\n"}}}<br>
Stacktrace: [{rabbit_mnesia,init_db,3},<br>
{rabbit_mnesia,init,0},<br>
{rabbit,'-run_boot_step/1-lc$^1/1-1-',1},<br>
{rabbit,run_boot_step,1},<br>
{rabbit,'-start/2-lc$^0/1-0-',1},<br>
{rabbit,start,2},<br>
{application_master,start_it_old,4}]<br>
{"Kernel pid
terminated",application_controller,"{application_start_failure,rabbit,{bad_return,{{rabbit,start,[normal,[]]},{'EXIT',{rabbit,failure_during_boot}}}}}"}<br>
</tt><br>
All commands finished successfully except the last.<br>
Could you help me to find out what kind of error appeared and why?<br>
It seems that first node (epbyminw2482t2) has already been removed
from the cluster, why some information about the one left in mnesia
on another node and appears in error log? I suppose that that
correct removing of any node from cluster should not influence on
others.<br>
Problem is reproducible with arbitrary number of disc nodes.<br>
<br>
It is interesting, that if we change an order joining to cluster -
join first node to second, then no error will appear.<br>
<br>
Environment:<br>
CentOS 6.0<br>
Erlang R1403<br>
RabbitMQ 2.7.1<br>
<br>
--<br>
Best regards,<br>
Artsiom<br>
<br>
</body>
</html>