[Xitami] Xitami 24d9 aborts right after reporting "could not accept connection: Software caused connection abort"
Ewen McNeill
xitami@lists.xitami.org
Mon, 03 Sep 2001 10:39:04 +1200
In message <NEBBIJGPHKNLMOCJIHFJIEHKCNAA.dmitry@transnexus.com>, "Dmitry Isakbayev" writes:
>Steps to reproduce:
>1) Build and run Xitami24d9 on Sun OS 5.7 or 5.8
>2) Point IE 5.0 browser to the default page
>3) Keep reloading the same page by keeping the "F5" key constantly pressed down.
>
>After a few seconds xitami reports "smthttp: could not accept connection:
>Software caused connection abort", closes all connections and dumps core.
>[Windows Xitami 24b9 doesn't have this problem]
Interesting testing methadology :-)
The "Software caused connection abort" appears to correspond to the
ECONNABORTED error number, which as far as I've been able to establish
is caused by a connection being closed before it has been fully
accepted, for some reason.
Given the way that you are testing it, it's possible that what is
happening is that the next F5 "reload" is processed at the webbrowser
end, thus closing the existing (not-yet-accepted) connection, and
opening a new one.
Xitami tries to raise an internal exception when it has network issues,
and basically concludes things have turned to custard at that point.
I suspect that ECONNABORTED may need to be handled, for the platforms
that return it, in much the same way as EAGAIN/EWOULDBLOCK -- ie, by
pretending we didn't see it, and simply moving on to waiting for the
next connection. You may or may not want to log the attempt failing.
If you want to try this I'd suggest modifying smthttp.c
accept_client_connection() to also test for ECONNABORTED, and handle it
in a different manner from the default.
Ewen
--
Ewen McNeill, Technical Consultant, iMatix Corporation www.imatix.com