Hi,<br><br>We&#39;ve recently moved over to using RabbitMQ from MSMQ and have generally had success in running RabbitMQ as a windows service on a number of different OSes (XP, Windows2003, Windows 7).<br><br>However, we&#39;ve come across a strange problem when starting up a rabbitMQ service on Windows 2003 SP2 on a VM, using RabbitMQ 2.51 and Erlang 5.8.4. Not sure if the VM aspect is relevant. <br>
<br>Using the rabbitmq-service.bat to install the service, the service (running under the local system account) starts and stops pretty much straight away. Here&#39;s the output from rabbitMQ.debug<br>-- rabbit boot start<br>
starting file handle cache server������������������������������������ ...done<br>starting worker pool������������������������������������������������� ...done<br>starting database���������������������������������������������������� ...done<br>
starting codec correctness check������������������������������������� ...done<br>-- external infrastructure ready<br>starting statistics event manager������������������������������������ ...done<br>starting logging server���������������������������������������������� ...done<br>
starting plugin registry��������������������������������������������� ...done<br>starting auth mechanism amqplain������������������������������������� ...done<br>starting auth mechanism cr-demo�������������������������������������� ...done<br>
starting auth mechanism plain���������������������������������������� ...done<br>starting exchange type direct���������������������������������������� ...done<br>starting exchange type fanout���������������������������������������� ...done<br>
starting exchange type headers��������������������������������������� ...done<br>starting exchange type topic����������������������������������������� ...done<br>-- kernel ready<br>starting node monitor������������������������������������������������ ...done<br>
starting cluster delegate�������������������������������������������� ...done<br>starting guid generator���������������������������������������������� ...done<br>starting alarm handler����������������������������������������������� ...done<br>
starting memory monitor���������������������������������������������� ...done<br>-- core initialized<br>starting empty DB check���������������������������������������������� ...done<br>starting exchange, queue and binding recovery������������������������ ...done<br>
-- message delivery logic ready<br>starting error log relay��������������������������������������������� ...done<br>starting networking�������������������������������������������������� ...BOOT ERROR: FAILED<br>Reason: {badmatch,<br>
����������� {error,<br>��������������� {shutdown,<br>������������������� {child,undefined,&#39;rabbit_tcp_listener_sup_0.0.0.0:5672&#39;,<br>����������������������� {tcp_listener_sup,start_link,<br>��������������������������� [{0,0,0,0},<br>
���������������������������� 5672,<br>���������������������������� [inet,binary,<br>����������������������������� {packet,raw},<br>����������������������������� {reuseaddr,true},<br>����������������������������� {backlog,128},<br>
����������������������������� {nodelay,true},<br>����������������������������� {exit_on_close,false}],<br>���������������������������� {rabbit_networking,tcp_listener_started,[amqp]},<br>���������������������������� {rabbit_networking,tcp_listener_stopped,[amqp]},<br>
���������������������������� {rabbit_networking,start_client,[]},<br>���������������������������� &quot;TCP Listener&quot;]},<br>����������������������� transient,infinity,supervisor,<br>����������������������� [tcp_listener_sup]}}}}<br>
Stacktrace: [{rabbit_networking,start_listener0,4},<br>������������ {rabbit_networking,&#39;-start_listener/4-lc$^0/1-0-&#39;,4},<br>������������ {rabbit_networking,start_listener,4},<br>������������ {rabbit_networking,&#39;-boot_tcp/0-lc$^0/1-0-&#39;,1},<br>
������������ {rabbit_networking,boot_tcp,0},<br>������������ {rabbit_networking,boot,0},<br>������������ {rabbit,&#39;-run_boot_step/1-lc$^1/1-1-&#39;,1},<br>������������ {rabbit,run_boot_step,1}]<br>in message_loop<br>win32sysinfo:Erlang has closed.Eshell V5.8.4� (abort with ^G)<br>
(rabbit@UKFAST-QOB4QITU)1&gt; {&quot;Kernel pid terminated&quot;,application_controller,&quot;{application_start_failure,rabbit,{bad_return,{{rabbit,start,[normal,[]]},{&#39;EXIT&#39;,{rabbit,failure_during_boot}}}}}&quot;}<br>
<br>The port is definitely not in use. Nor is there a firewall enabled.<br><br>Having looked though the archives we&#39;ve tried passing in sname and name arguments to erl.exe with no luck.<br><br>The interesting thing is that we can get RabbitMQ to run as an application on this box, using the standard rabbitmq-server.bat. <br>
<br>After a bit of messing around we also found that if we set� <span class="term">HKEY_LOCAL_MACHINE\SOFTWARE\Ericsson\Erlang\ErlSrv\1.1\RabbitMQ\Machine to point to D:\Program Files\erl5.8.4\bin\erl.exe rather than D:\Program Files\erl5.8.4\erts-5.8.4\bin\erl.exe then the service also runs. Queues get created and we can successfully publish/subscribe to queues .<br>
<br>Does anyone have any thoughts on why the standard service install would fail but the application and modified install seem to work fine.<br><br>How safe is it to use erl.exe from </span><span class="term">erl5.8.4\bin\erl.exe rather than </span><span class="term">erl5.8.4\erts-5.8.4\bin\erl.exe? i.e is this an acceptable workaround.<br>
<br>Thanks in advance for any help.<br><br>Regards<br><br>Richard<br><br></span>