couchdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Paul Joseph Davis (JIRA)" <>
Subject [jira] [Updated] (COUCHDB-1246) CouchJS process spawned and not killed on each Reduce Overflow Error
Date Fri, 12 Aug 2011 04:42:27 GMT


Paul Joseph Davis updated COUCHDB-1246:

    Attachment: COUCHDB-1246.patch

Yeah, this is quite the racy error condition. This patch should fix things though. Basic idea
is that instead of doing a link dance we just monitor every new os process and remove them
when they exit.

Also, couch_os_process's were traping exits and ignoring info messages which left them open,
hence the system build up.

This passes my local tests, but I'm not sure how to write an etap for them. I'll commit it
if someone else can duplicate the fix though.

> CouchJS process spawned and not killed on each Reduce Overflow Error
> --------------------------------------------------------------------
>                 Key: COUCHDB-1246
>                 URL:
>             Project: CouchDB
>          Issue Type: Bug
>          Components: JavaScript View Server
>    Affects Versions: 1.1
>         Environment: Linux Debian Squeeze
> [query_server_config]
> reduce_limit = true
> os_process_limit = 25
>            Reporter: Michael Newman
>         Attachments: COUCHDB-1246.patch, categories
> Running the view attached results in a reduce_overflow_error. For each reduce_overflow_error
a process of /usr/lib/couchdb/bin/couchjs /usr/share/couchdb/server/main.js starts running.
Once this gets to 25, which is the os_process_limit by default, all views result in a server
error: timeout {gen_server,call,[couch_query_servers,{get_proc,<<"javascript">>}]}
> As far as I can tell, these processes and the non-response from the views will continue
until couch is restarted.

This message is automatically generated by JIRA.
For more information on JIRA, see:


View raw message