Randall,
Thanks for the quick answer.
Couch absolutely takes advantage of things like supervisor trees and process
spawning. Handling each client in a separate process is not something only
done in erlang, but erlang makes it easier. The supervisor trees and pattern
mattern matching make error handling pretty nice, ensuring that errors
bubble up appropriately so proper return codes can reach the client.
In the future, I suspect we'll see even more as clustering features start to
work their way into core couchdb.
Anything else in particular you had in mind?
I guess I'm just a little surprised that the replication features seem
to be independent of Erlang's underlying inter-node communications
capabilities. Seems like the clustering features would have been an
obvious place to start for high-reliability operations.
Miles
--
In theory, there is no difference between theory and practice.
In<fnord> practice, there is. .... Yogi Berra