ports/165936: Ejabberd fails when starting odbc.

Andrey Shestakov ornicum at gmail.com
Sun Mar 11 16:40:04 UTC 2012


>Number:         165936
>Category:       ports
>Synopsis:       Ejabberd fails when starting odbc.
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Sun Mar 11 16:40:04 UTC 2012
>Closed-Date:
>Last-Modified:
>Originator:     Andrey Shestakov
>Release:        8.2
>Organization:
>Environment:
FreeBSD ornicum_server.local 8.2-RELEASE FreeBSD 8.2-RELEASE #2: Sun Jul  3 19:34:35 NOVST 2011     root at ornicum_server:/usr/src/sys/i386/compile/ornicum  i386
>Description:
Goof time of day!

I have installed erlang with odbc support and ejabberd from ports, erlang version is R14B04 and ejabberd version is 2.1.9. When I try to start it in ejabberd.log I see this:

=INFO REPORT==== 2012-03-11 22:43:23 ===
    application: ejabberd
    exited: {bad_return,
        {{ejabberd_app,start,[normal,[]]},
         {'EXIT',
          {noproc,
           {gen_server,call,
            [ejabberd_sup,
             {start_child,
              {'ejabberd_odbc_sup_<my.domain>',
               {ejabberd_odbc_sup,start_link,["<my.domain>"]},
               transient,infinity,supervisor,
               [ejabberd_odbc_sup]}},
             infinity]}}}}}
    type: temporary

And same error in erlang.log.
How can you see there is nothing error name, type of error only. I have searching any information about it. Developers of ejabberd answered that such behavior impossible because it was fixed in more earlier version. And on official site of ejabberd project written in "2.4.1  Requirements" section: "Erlang/OTP R10B-9 or higher. The recommended versions are R12B-5 and R13B04. Don’t use R14A or R14B because they have a bug."

What can I do?

Regards,

Andrey Shestakov
>How-To-Repeat:
1. Install erlang with odbc support.
2. Install ejabberd.
3. Install ejabberd module for postgresql.
4. My ejabberd.cfg.
override_acls.
{loglevel, 5}.
{hosts, ["<my.domain>"]}.
{listen,
 [
  {5222, ejabberd_c2s, [
   {access, c2s},
   {shaper, c2s_shaper},
   {max_stanza_size, 65536}
  ]},
  {5280, ejabberd_http, [
   captcha,
   http_bind,
   http_poll,
   web_admin
  ]}
 ]}.
{auth_method, odbc}.
{odbc_server, {pgsql, "localhost", "ejabberd", "ejabber", "password"}}.
{pgsql_users_number_estimate, true}.

all other options is in default value.

5. In /etc/rc.conf.
ejabberd_enable="YES"
ejabberd_node="<my0>@<my_domain>"

6. And now starting.
#/usr/local/etc/rc.d/ejabberd start
>Fix:


>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list