couchdb-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Apache Wiki <wikidi...@apache.org>
Subject [Couchdb Wiki] Update of "ExternalProcesses" by JarrodRoberson
Date Sat, 01 May 2010 20:32:26 GMT
Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Couchdb Wiki" for change notification.

The "ExternalProcesses" page has been changed by JarrodRoberson.
http://wiki.apache.org/couchdb/ExternalProcesses?action=diff&rev1=14&rev2=15

--------------------------------------------------

   * All interaction is in the form of single lines. Each response should include *exactly*
one new line that terminates the JSON object.
   * When using base64 encoders, be sure to strip any CRLF from the result - most encoders
will add CRLF after 76 characters and at the end.
   * CouchDB 0.10 looks for a case-sensitive match of the Content-Type header -- a user-defined
header must specify "Content-Type", not "content-type" or "CoNtEnT-type".  This is fixed in
future releases.
+  * When developing handlers you need to restart CouchDB after each change  as it doesn't
see the changes until you restart the server.
+  * '''Notes for OSX users:'''
+  If  you are using launchctl to load and unload your CouchDB instance, it by  default starts
the couchdb instance with user couchdb. External  handlers won't run if they are not executable
by this user. Calls to  them will fail with a 'OS Process timeout' error stack trace from
 Erlang. If you start couchdb with sudo couchdb things will work fine.  Here is an article
in more detail http://www.vertigrated.com/blog/2010/04/couchdb-launchctl-external-httpd-handlers-madness/
  
  == Configuration ==
  Adding external processes is as easy as pie. Simply place key=command pairs in the ''[external]''
section of your ''local.ini'' and then map those handlers in the ''[httpd_db_handlers]'' section,
like:
@@ -116, +119 @@

  }}}
  A Java example can be found here: http://daily.profeth.de/2009/12/apache-couchdb-external-process-using.html
  
- '''Notes for developing external handlers'''
- 
- When developing handlers you need to restart CouchDB after each change as it doesn't see
the changes until you restart the server.
- 
- '''Notes for OSX users:'''
- 
- if you are using launchctl to load and unload your CouchDB instance, it by default starts
the couchdb instance with user couchdb. External handlers won't run if they are not executable
by this user. Calls to them will fail with a 'OS Process timeout' error stack trace from Erlang.
If you start couchdb with sudo couchdb things will work fine. Here is an article in more detail
http://www.vertigrated.com/blog/2010/04/couchdb-launchctl-external-httpd-handlers-madness/
- 

Mime
View raw message