[Ecls-list] EPIPE and C errors

Matthew Mondor mm_lists at pulsar-zone.net
Thu Sep 20 22:11:49 UTC 2012


Hello,

I noticed that functions such as WRITE-SEQUENCE will signal a condition
of type SIMPLE-ERROR if EPIPE is returned when writing.  This is
admitedly in non-standard territory, as only TYPE-ERROR is specified
for WRITE-SEQUENCE.

I could wrap these calls closely inside a HANDLER-CASE/HANDLER-BIND and
perhaps signal there another custom condition, but without printing the
error, it's still awkward for code to determine the exact error cause
(I don't see an ERRNO slot in the SIMPLE-ERROR condition object).  I
also wondered if such cases shouldn't actually signal a FILE-ERROR or
perhaps even a C-ERROR, which could include an ERRNO slot?

Currently these propagate to the top-level of Crow-httpd's
ACCEPT-LOOP-THREAD which logs it and resumes, which is not a problem,
except in the case where the configuration doesn't include :LOG-ERRORS
in the debug options, in which case it'd be nice to not log this type
of expected error while still logging any unexpected one.  Even in the
case of :LOG-ERRORS, it'd be nice to log it at a higher level including
the client's IP address and session ID, which still requires to
properly differenciate this condition to handle it before it reaches
the top-level...

I did not check how other implementations signal this yet.

Thanks,
-- 
Matt




More information about the ecl-devel mailing list