You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@couchdb.apache.org by Sefa Şahin Koç <sh...@gmail.com> on 2012/07/17 21:47:00 UTC

couchdb.http.ServerError : 500 Bad match, emfile...

Hi
I am running python code on a server_1. It stores records in another
server_2. But after a while, it is asserted. To enable the program to run
again, I need to restart couchdb in server_2.
I am not using Document object. I compose a python dictionary object for
each info to insert. Then, I just run the command "db.save(dict)".
Addtionally one query is done, which is present in the following code:

        code = '''function(doc) {if(doc.hashValue == "''' + hashValue +
'''"){emit(null, doc);}}'''                 #hashValue is a string
        result = self.dns_db.query(code)
        if len(result) == 0:
            return True
        else:
            return False

Error:
File "/home/koc/dnsReputation/dnsDatabase.py", line 50, in checkHashValue
    if len(result) == 0:
  File
"/usr/local/lib/python2.6/dist-packages/CouchDB-0.8-py2.6.egg/couchdb/client.py",
line 987, in __len__
  File
"/usr/local/lib/python2.6/dist-packages/CouchDB-0.8-py2.6.egg/couchdb/client.py",
line 1003, in rows
  File
"/usr/local/lib/python2.6/dist-packages/CouchDB-0.8-py2.6.egg/couchdb/client.py",
line 990, in _fetch
  File
"/usr/local/lib/python2.6/dist-packages/CouchDB-0.8-py2.6.egg/couchdb/client.py",
line 914, in _exec
  File
"/usr/local/lib/python2.6/dist-packages/CouchDB-0.8-py2.6.egg/couchdb/http.py",
line 399, in post_json
  File
"/usr/local/lib/python2.6/dist-packages/CouchDB-0.8-py2.6.egg/couchdb/http.py",
line 381, in post
  File
"/usr/local/lib/python2.6/dist-packages/CouchDB-0.8-py2.6.egg/couchdb/http.py",
line 419, in _request
  File
"/usr/local/lib/python2.6/dist-packages/CouchDB-0.8-py2.6.egg/couchdb/http.py",
line 310, in request
couchdb.http.ServerError: (500, ('error', '{{badmatch,{error,emfile}},\n
[{couch_file,init,1},{gen_server,init_it,6},{proc_lib,init_p_do_apply,3}]}'))


OS: Ubuntu 12.04 LTS
Couchdb : 1.0.1
Apache : 2.0

I am quite new in couchdb. So, any help is appriciated. Thanks

-- 
*Sefa Şahin KOÇ*

Re: couchdb.http.ServerError : 500 Bad match, emfile...

Posted by Alexander Shorin <kx...@gmail.com>.
Hi!

AFAIK, emfile error is about exhausted file descriptions. Try to tweak
their number for couchdb user in /etc/security/limits.conf .
Another solution could be in increasing ERL_MAX_PORTS environ variable
value (default is 1024), but I'm not sure about this in your case.

--
,,,^..^,,,


On Tue, Jul 17, 2012 at 11:47 PM, Sefa Şahin Koç <sh...@gmail.com> wrote:
> Hi
> I am running python code on a server_1. It stores records in another
> server_2. But after a while, it is asserted. To enable the program to run
> again, I need to restart couchdb in server_2.
> I am not using Document object. I compose a python dictionary object for
> each info to insert. Then, I just run the command "db.save(dict)".
> Addtionally one query is done, which is present in the following code:
>
>         code = '''function(doc) {if(doc.hashValue == "''' + hashValue +
> '''"){emit(null, doc);}}'''                 #hashValue is a string
>         result = self.dns_db.query(code)
>         if len(result) == 0:
>             return True
>         else:
>             return False
>
> Error:
> File "/home/koc/dnsReputation/dnsDatabase.py", line 50, in checkHashValue
>     if len(result) == 0:
>   File
> "/usr/local/lib/python2.6/dist-packages/CouchDB-0.8-py2.6.egg/couchdb/client.py",
> line 987, in __len__
>   File
> "/usr/local/lib/python2.6/dist-packages/CouchDB-0.8-py2.6.egg/couchdb/client.py",
> line 1003, in rows
>   File
> "/usr/local/lib/python2.6/dist-packages/CouchDB-0.8-py2.6.egg/couchdb/client.py",
> line 990, in _fetch
>   File
> "/usr/local/lib/python2.6/dist-packages/CouchDB-0.8-py2.6.egg/couchdb/client.py",
> line 914, in _exec
>   File
> "/usr/local/lib/python2.6/dist-packages/CouchDB-0.8-py2.6.egg/couchdb/http.py",
> line 399, in post_json
>   File
> "/usr/local/lib/python2.6/dist-packages/CouchDB-0.8-py2.6.egg/couchdb/http.py",
> line 381, in post
>   File
> "/usr/local/lib/python2.6/dist-packages/CouchDB-0.8-py2.6.egg/couchdb/http.py",
> line 419, in _request
>   File
> "/usr/local/lib/python2.6/dist-packages/CouchDB-0.8-py2.6.egg/couchdb/http.py",
> line 310, in request
> couchdb.http.ServerError: (500, ('error', '{{badmatch,{error,emfile}},\n
> [{couch_file,init,1},{gen_server,init_it,6},{proc_lib,init_p_do_apply,3}]}'))
>
>
> OS: Ubuntu 12.04 LTS
> Couchdb : 1.0.1
> Apache : 2.0
>
> I am quite new in couchdb. So, any help is appriciated. Thanks
>
> --
> *Sefa Şahin KOÇ*