On Sat, 31 Oct 1998, Ben Laurie wrote:
> This is far to general a criterion. Some kinds of I/O are completely
> deterministic (given correct code). I agree that to assert on user input
> is not a brilliant idea, but on a tightly linked client/server pair, it
> seems to me no different to asserting on the value of a parameter.
The difference is that you are assuming that if there is a problem with
the client, then there is a problem with the server. That is like saying
that if a web browser makes an improperly formatted request to Apache, it
should assert() because that shouldn't happen and could mean the server is
messed up and doing something wrong.
It doesn't make sense to assume that communications are perfect unless you
have proof otherwise. In this case, I'm guessing that if the client
connects then closes the socket for some reason before sending the request
then gcache will die. This could be due to any one of a huge number of
issues in the client or the OS, eg. temporary lack of networking buffers,
stray timeout, logic error in the client, etc. It simply isn't robust to
assume that if there is ever an error in any part of the system the whole
system should fall down!
______________________________________________________________________
Apache Interface to SSLeay (mod_ssl) www.engelschall.com/sw/mod_ssl/
Official Support Mailing List [EMAIL PROTECTED]
Automated List Manager [EMAIL PROTECTED]