ejabberd 2.1.1 crashes inside Freebsd-8 jail

I installed the latest ejabberd version in my Freebsd-8 jail. Unfortunately,
the program crashed every time, event ejabberdctl does crash:
ejabberdctl
{error_logger,{{2010,1,11},{13,18,1}},"Protocol: ~p: register error: ~p~n",["inet_tcp",{{badmatch,{error,eacces}},[{inet_tcp_dist,listen,1},{net_kernel,start_protos,4},{net_kernel,start_protos,3},{net_kernel,init_node,2},{net_kernel,init,1},{gen_server,init_it,6},{proc_lib,init_p_do_apply,3}]}]}
{error_logger,{{2010,1,11},{13,18,1}},crash_report,[[{initial_call,{net_kernel,init,['Argument__1']}},{pid,<0.20.0>},{registered_name,[]},{error_info,{exit,{error,badarg},[{gen_server,init_it,6},{proc_lib,init_p_do_apply,3}]}},{ancestors,[net_sup,kernel_sup,<0.9.0>]},{messages,[]},{links,[#Port<0.111>,<0.17.0>]},{dictionary,[{longnames,false}]},{trap_exit,true},{status,running},{heap_size,377},{stack_size,24},{reductions,482}],[]]}
{error_logger,{{2010,1,11},{13,18,1}},supervisor_report,[{supervisor,{local,net_sup}},{errorContext,start_error},{reason,{'EXIT',nodistribution}},{offender,[{pid,undefined},{name,net_kernel},{mfa,{net_kernel,start_link,[['ctl-ejabberd@localhost',shortnames]]}},{restart_type,permanent},{shutdown,2000},{child_type,worker}]}]}
{error_logger,{{2010,1,11},{13,18,1}},supervisor_report,[{supervisor,{local,kernel_sup}},{errorContext,start_error},{reason,shutdown},{offender,[{pid,undefined},{name,net_sup},{mfa,{erl_distribution,start_link,[]}},{restart_type,permanent},{shutdown,infinity},{child_type,supervisor}]}]}
{error_logger,{{2010,1,11},{13,18,1}},std_info,[{application,kernel},{exited,{shutdown,{kernel,start,[normal,[]]}}},{type,permanent}]}
{"Kernel pid terminated",application_controller,"{application_start_failure,kernel,{shutdown,{kernel,start,[normal,[]]}}}"}

Crash dump was written to: /usr/local/var/log/ejabberd/erl_crash_20100111-131801.dump
Kernel pid terminated (application_controller) ({application_start_failure,kernel,{shutdown,{kernel,start,[normal,[]]}}})

Any ideas what might be the cause of this? Does anyone made ejabberd work inside a Freebsd jail?

Thanks
Johannes

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Maybe Erlang can't even start?

The Erlang module inet_tcp found an unexpected error eaccess (error in access). This may be a problem in general Erlang, not limited to ejabberd.

For example, does this work correctly for you?

$ erl -sname node1
Erlang R13B03 (erts-5.7.4) [source] [smp:2:2] [rq:2] [async-threads:0] [hipe] [kernel-poll:false]

Eshell V5.7.4  (abort with ^G)
(node1@localhost)1> 55*71.
3905
(node1@localhost)2> q().
ok
(node1@localhost)3>
$

Thanks for the hint, it seems to be the right direction

here is what happens:
erl -sname node1
{error_logger,{{2010,1,11},{23,9,32}},"Protocol: ~p: register error: ~p~n",["inet_tcp",{{badmatch,{error,eaddrnotavail}},[{inet_tcp_dist,listen,1},{net_kernel,start_protos,4},{net_kernel,start_protos,3},{net_kernel,init_node,2},{net_kernel,init,1},{gen_server,init_it,6},{proc_lib,init_p_do_apply,3}]}]}
{error_logger,{{2010,1,11},{23,9,32}},crash_report,[[{initial_call,{net_kernel,init,['Argument__1']}},{pid,<0.20.0>},{registered_name,[]},{error_info,{exit,{error,badarg},[{gen_server,init_it,6},{proc_lib,init_p_do_apply,3}]}},{ancestors,[net_sup,kernel_sup,<0.9.0>]},{messages,[]},{links,[#Port<0.66>,<0.17.0>]},{dictionary,[{longnames,false}]},{trap_exit,true},{status,running},{heap_size,377},{stack_size,24},{reductions,444}],[]]}
{error_logger,{{2010,1,11},{23,9,32}},supervisor_report,[{supervisor,{local,net_sup}},{errorContext,start_error},{reason,{'EXIT',nodistribution}},{offender,[{pid,undefined},{name,net_kernel},{mfa,{net_kernel,start_link,[[node1,shortnames]]}},{restart_type,permanent},{shutdown,2000},{child_type,worker}]}]}
{error_logger,{{2010,1,11},{23,9,32}},supervisor_report,[{supervisor,{local,kernel_sup}},{errorContext,start_error},{reason,shutdown},{offender,[{pid,undefined},{name,net_sup},{mfa,{erl_distribution,start_link,[]}},{restart_type,permanent},{shutdown,infinity},{child_type,supervisor}]}]}
{error_logger,{{2010,1,11},{23,9,32}},std_info,[{application,kernel},{exited,{shutdown,{kernel,start,[normal,[]]}}},{type,permanent}]}
{"Kernel pid terminated",application_controller,"{application_start_failure,kernel,{shutdown,{kernel,start,[normal,[]]}}}"}

Crash dump was written to: erl_crash.dump
Kernel pid terminated (application_controller) ({application_start_failure,kernel,{shutdown,{kernel,start,[normal,[]]}}})

I use the new VImage feature, maybe this is connected to that...
Thanks anyway, I guess I have to ask for help somewhere else.

Try erlang-questions mailing list.

Quote:

I use the new VImage feature, maybe this is connected to that...
Thanks anyway, I guess I have to ask for help somewhere else.

Yes, it seems some problem in Erlang/OTP. If your search in Internet doesn't help, you can search in the erlang-questions mailing list, or ask there.

Quote:

here is what happens:
erl -sname node1
{error_logger,{{2010,1,11},{23,9,32}},"Protocol: ~p: register error: ~p~n",["inet_tcp",{{badmatch,{error,eaddrnotavail}} ...

It means something like "error address not available" when starting the Erlang machine. Maybe related to one important part of Erlang:

"When an Erlang node starts, the node has a name and it obtains an address from the host OS kernel. The name and the address are sent to the epmd daemon running on the local host."

http://www.erlang.org/doc/man/epmd.html

I found the cause (by

I found the cause (by accident)
I did not set a hostname before, it seems that this made empd crash.

Thanks for you help!

Syndicate content