Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Couchdb not starting. -- Failure to start Mochiweb: eaddrinuse

I have configure and installed couchdb 1.6.1 on ubuntu 10.04. While configuring and installing it said successfully done. But when I start couchdb it gives me error.

When start first..

Apache CouchDB 1.6.1 (LogLevel=info) is starting.

Apache CouchDB has started. Time to relax.

**[info] [<0.32.0>] Apache CouchDB has started on http://127.0.0.1:5984/**

When starting again

 Apache CouchDB 1.6.1 (LogLevel=info) is starting.

 **Failure to start Mochiweb: eaddrinuse**

[error] [<0.127.0>] {error_report,<0.31.0>,
                    {<0.127.0>,crash_report,[[{initial_call,
                           {mochiweb_socket_server,init,['Argument__1']}},
                       {pid,<0.127.0>},
                       {registered_name,[]},
                       {error_info,
                           {exit,eaddrinuse,
                               [{gen_server,init_it,6},
                                {proc_lib,init_p_do_apply,3}]}},
                       {ancestors,
                           [couch_secondary_services,couch_server_sup,
                            <0.32.0>]},
                       {messages,[]},
                       {links,[<0.95.0>]},
                       {dictionary,[]},
                       {trap_exit,true},
                       {status,running},
                       {heap_size,987},
                       {stack_size,24},
                       {reductions,467}],
                      []]}}
{"init terminating in do_boot",{{badmatch,{error,{bad_return,{{couch_app,start,[normal,["/usr/local/etc/couchdb/default.ini","/usr/local/etc/couchdb/local.ini"]]},{'EXIT',{{badmatch,{error,shutdown}},[{couch_server_sup,start_server,1},{application_master,start_it_old,4}]}}}}}},[{couch,start,0},{init,start_it,1},{init,start_em,1}]}}

Crash dump was written to: erl_crash.dump
init terminating in do_boot ()

in local.ini I changed Port to 5983 and also ip to 0.0.0.0 from 127.0.0.1 Nothing helped

When i run sudo netstat -tulpn

I get following output

tcp 0 0 127.0.0.1:5984 0.0.0.0:* LISTEN 21688/beam.smp

couchdb -s says Apache CouchDB is not running.

Thanks in advance

like image 599
Satish Avatar asked May 14 '15 09:05

Satish


2 Answers

If you came here because you recently upgrade you CouchDB 2.0, make sure you updated your local.ini config file. The section for the web server configuration has changed (the name changed from something like httpd to chttpd). Because of that the port directive wasn't being picked up and it was defaulting to 80 which was the same as the web server.

like image 101
ioquatix Avatar answered Oct 23 '22 04:10

ioquatix


Based on the error message entries provided, CouchDB is already up & running on your machine/ server with port 5984

**Failure to start Mochiweb: eaddrinuse**

That's why When you run sudo netstat -tulpn command on Linux based machine, you are getting the following output :

tcp 0 0 127.0.0.1:5984 0.0.0.0:* LISTEN 21688/beam.smp

Solutions :

couchdb is not a service script in the way you're trying to use it. It is just trying to start up again and failing because one is already running (erlang beam.smp process is still running).

Check & kill all CouchDB processes using following commands :

/bin/ps aux | grep couchdb | grep -v grep | awk '{print $2}' | xargs killl

Start CouchDB again using following command using root linux user :

service couchdb start

Note :

  • When you enter couchdb -s command, You are getting the message like Apache CouchDB is not running.

  • When you enter couchdb -d command, You are getting the message like Apache CouchDB is not running.

Reason for above outputs, You are executing above mentioned commands as non privileged linux users accounts.

Try to execute above mentioned commands as root Or couchDB running linux users accounts.

like image 29
Nilaxan Satgunanantham Avatar answered Oct 23 '22 05:10

Nilaxan Satgunanantham