Kristian Rink wrote:
Ronald;

[Ronald Klop <[EMAIL PROTECTED]> @ Wed, 15 Aug 2007 09:56:59
+0200 (CEST)]

ClientAbortException means the user canceled the download (the
'client aborted'). There is nothing you can do about that on the
server.

I thought so. However, there are two things:

(a) I was unsure whether, in a proxied environment, a
"ClientAbortException" means download canceled by the actual (external)
"client" or by the proxy server (which is directly accessing the
backend tomcat).

OK, the proxy in your case is a reverse proxy. The exception in the tomcat logs could theretically come from a communication failure back to the reverse proxy, or from a failure from the reverse proxy back to the client=browser. In the latter case, the reverse proxy would not accept any more traffic from the tomcat and thus indirectly lead to the same exception.

When using mod_jk, it will log problems during sending back data to the client=browser. That way you would know, on which part of the net the original problem is located.

By logging response times in your Apache access log and redundantly in your Tomcat access log (at least until you solved or understood the cause of the problem), you can also find out, how long the response took from the perspective of Apache and of Tomcat, and if the duration is close to some configured timeout interval. The pattern for response times if "%D", which means microseconds with Apache httpd and milliseocond swith Tomcat. From the mod_jk log and the access log duration information you might even be able to determine, which requests had the problem (this is not easy and if you've got high load, it's difficult). I would suggest using mod_jk 1.2.25. It will log millisecond timestamps and has a couple further stability improvements. You wrote about version 1.2.29 which does not exist, upgrading should be no problem.

JK has a couple of timeouts additionally to the Apache httpd timeout. They are described at

http://tomcat.apache.org/connectors-doc/generic_howto/timeouts.html

(b) In none of the cases I watched so far, some user consciously /
actively stopped a download in progress - all reported that either the
"download finished" but ended up with an empty / small / corrupted file
or an error message showed up - or nothing happened at all. :(

I am not really sure who's to blame for that... :/

I would really try to look at the response handling times, the URLs for which it is happening, the client IPs and User Agent types to check, if there are any obvious patterns.

In case you can finally reproduce the problem with low load, you can switch jk log level to debug or even trace. Then the log file will include full packet and header dumps. This is not a good idea for high traffic production though.

Regards,

Rainer

---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to