Already found and fixed a couple more bugs. The latest patch will always be the last commit on this branch:
http://github.com/davisp/couchdb/tree/os_daemons On Sat, Sep 25, 2010 at 7:28 PM, Paul Davis <[email protected]> wrote: > I've implemented the OS daemons feature and added some preliminary etap tests. > > Patch as commit is here: > > http://github.com/davisp/couchdb/commit/01b75b8f74cd31605cbdbc3a6f6c7b9e8fcdcbe3 > > This feature affects zero functionality and is purely an addition to > CouchDB. I'm tempted to just and commit it because of that but I'm > gonna wait another day or two to see if someone comes up with a strong > opposition to this line of development. > > Feed back desired. > > Paul Davis > > > On Fri, Sep 24, 2010 at 6:20 PM, Filipe David Manana > <[email protected]> wrote: >> Paul, you have my +1 >> >> cheers >> >> On Fri, Sep 24, 2010 at 7:10 PM, Paul Davis <[email protected]> >> wrote: >>> At CouchCamp there was a bit of discussion on replacing the _external >>> API with something a bit more modern to give _external processes more >>> control over their environment. >>> >>> The idea was born out of a discussion with Robert Newson who mentioned >>> that couchdb-lucene really only needs a reverse proxy to put itself in >>> the same URL namespace. It occurred to us that having a reverse proxy >>> instead of the current _external stdio protocol would allow lots of >>> other interesting features like node.js integration, as well as allow >>> implementors to handle requests in parallel and so on and such forth. >>> >>> The major drawback that was identified was that if we switched to just >>> a reverse proxy, people would then be responsible for handling the >>> process management of their _external handlers. Ie, they'd have to >>> configure daemon monitoring to make sure the processes stayed up and >>> what not. The solution we came up with was to include another feature >>> that did process management. Ie, something that would bring up an OS >>> process when the server booted, and respawn it if it crashed. There'd >>> be no connection to the _externals. Other than the basic "just keep a >>> process up" sort of behaviour, the only other thing I could see adding >>> is a simple stdio protocol to get configuration values from CouchDB. >>> Other people have expressed interest in just the process management >>> functionality as well which makes me think that having the two new >>> features to replace the _external API would be both easier on >>> developers as well as providing more functionality. >>> >>> So now I'm looking for feedback on what other people might think of >>> this. I'll start working on this fairly soon if I don't hear any major >>> objections. >>> >>> HTH, >>> Paul Davis >>> >> >> >> >> -- >> Filipe David Manana, >> [email protected], [email protected] >> >> "Reasonable men adapt themselves to the world. >> Unreasonable men adapt the world to themselves. >> That's why all progress depends on unreasonable men." >> >
