Hi.

Sorry to invade/hijack, but I believe the following is very similar to the original OP's request.

Rainer, I have a case very similar to the one below at a customer, running under RHEL 5, with Apache 2.0.x, mod_jk 1.2.28 (dev) and Tomcat 5.5.x. (the mod_jk 1.2.6 originally installed showed the same issues, only slightly different error messages).

I also have both kinds of messages, like the OP (from mod_jk to client, and from mod_jk to Tomcat). What concerns me is the ones to the clients. These messages happen very regularly (every few minutes), sometimes in bursts. It is pretty-well established that the users do not click away from the page and do not click the "cancel" button. The browser is IE6, and often returns a "This page cannot be displayed" ("friendly IE error message", which unfortunately cannot be turned off by the users, settings locked). The users are getting pretty p.. off by what they perceive as an application problem, but we do not see a problem at the application level (logfiles etc..). When users, after the IE error page, click the "reload" button, the same request/response usually works fine. The users say that this problem affects only this application and/or server, but we do not know if they actually use any other comparable service. The server is hosted by a service company, in a location physically distant from the users, but supposedly with good connectivity. The server/application can sometimes take a while to respond to a request, but never more than say 10 seconds at most, and users kind of know when they ask a heavy question, so they would not really get so impatient. Users are spread out, so even when monitoring the mod_jk log in real time it is not easy to immediately connect one of these client-side mod_jk error messages with the occurrence of an error at IE level. We just kind of suppose they are linked. The problem is specific to that customer site. We have similar setups at many other places, none of them exhibiting the same issue.

Any ideas/suggestions of what we could do to better pin-point the problem ? (or of some setting to overcome it ?)

Note that I am not saying that mod_jk has any responsibility in the issue. It is just that the mod_jk log seems to be the only one that actually sems to show where the error happens.

Thanks.

Rainer Jung wrote:
Hi,

On 27.01.2009 13:20, Arne Riecken wrote:
Hi,

please have a look at the mod_jk.log. Can anyone say if these info-entrys
are normal or if the system is unhealthy? Or might the network be bad? These
entrys come at least two times per hour.

1) All messages are info level, that's good.

2) All messages with the same process id and thread id (the number pair following the timestamp) and close to each other in time belong to the same event.

3) In you log excerpt, there are two types of events:

a) client abort

ajp_process_callback::jk_ajp_common.c (1448): Writing to client aborted or client network problems

ajp_service::jk_ajp_common.c (1857): (worker6) request failed, because of client write error without recovery in send loop attempt=0

service::jk_lb_worker.c (1068): unrecoverable error 200, request failed. Client failed in the middle of request, we can't recover to another instance.

jk_handler::mod_jk.c (2158): Aborting connection for worker=routerExt2

Client write error means, that when sending back data to the browser, the web server realized that the browser already closed the connection. Most likely the user decided to click on some link while waiting for a response. If this happens only occasionally, it should be fine. If it happens very often it might be an indication for performance problems, i.e. your users clicking repeatedly on the same links, because they don't get a fast answer.

b) idle connection timeouts

ajp_send_request::jk_ajp_common.c (1215): (worker1) error sending request. Will try another pooled connection ajp_send_request::jk_ajp_common.c (1241): (worker1) all endpoints are disconnected ajp_send_request::jk_ajp_common.c (1244): (worker1) increase the backend idle connection timeout or the connection_pool_minsize ajp_service::jk_ajp_common.c (1941): (worker1) sending request to tomcat failed, recoverable operation attempt=1

Without additional error level messages that's OK. The web server noticed, that there was no connection to the backend open and will transparently create a new one. This could happen, if your web server is more idle than configured with the JK connection pool timeout or Tomcat's connectionTimeout.

4) Please keep info log level. As long as there are no warn or error messages, everything is fine, but once there are error messages, the aditional info messages are helpful.

You should update to 1.2.27, it's better than 1.2.23 :)

Regards,

Rainer


Thanks.

mod_jk 1.2.23
Apache 1.3.34
Tomcat 5.5.20

socket_keepalive=False
connect_timeout=30000
prepost_timeout=30000
connection_pool_timeout=600

all others default

Firewall is dropping idle connections after 1h.

[Sat Jan 24 01:07:15 2009] [29654:0000] [info]
ajp_process_callback::jk_ajp_common.c (1448): Writing to client ab
orted or client network problems
[Sat Jan 24 01:07:15 2009] [29654:0000] [info] ajp_service::jk_ajp_common.c
(1857): (worker6) request failed, because of client write error without
recovery in send loop attempt=0
[Sat Jan 24 01:07:15 2009] [29654:0000] [info]  service::jk_lb_worker.c
(1068): unrecoverable error 200, request failed. Client failed in the middle
of request, we can't recover to another instance.
[Sat Jan 24 01:07:15 2009] [29654:0000] [info] jk_handler::mod_jk.c (2158):
Aborting connection for worker=routerExt2
[Sat Jan 24 01:08:53 2009] [31110:0000] [info]
ajp_send_request::jk_ajp_common.c (1215): (worker1) error sending request.
Will try another pooled connection
[Sat Jan 24 01:08:53 2009] [31110:0000] [info]
ajp_send_request::jk_ajp_common.c (1241): (worker1) all endpoints are
disconnected
[Sat Jan 24 01:08:53 2009] [31110:0000] [info]
ajp_send_request::jk_ajp_common.c (1244): (worker1) increase the backend
idle connection timeout or the connection_pool_minsize
[Sat Jan 24 01:08:53 2009] [31110:0000] [info] ajp_service::jk_ajp_common.c (1941): (worker1) sending request to tomcat failed, recoverable operation
attempt=1
[Sat Jan 24 01:14:46 2009] [31781:0000] [info]
ajp_send_request::jk_ajp_common.c (1215): (worker1) error sending request.
Will try another pooled connection
[Sat Jan 24 01:14:46 2009] [31781:0000] [info]
ajp_send_request::jk_ajp_common.c (1241): (worker1) all endpoints are
disconnected
[Sat Jan 24 01:14:46 2009] [31781:0000] [info]
ajp_send_request::jk_ajp_common.c (1244): (worker1) increase the backend
idle connection timeout or the connection_pool_minsize
[Sat Jan 24 01:14:46 2009] [31781:0000] [info] ajp_service::jk_ajp_common.c (1941): (worker1) sending request to tomcat failed, recoverable operation
attempt=1
[Sat Jan 24 01:15:04 2009] [31959:0000] [info]
ajp_send_request::jk_ajp_common.c (1215): (worker9) error sending request.
Will try another pooled connection
[Sat Jan 24 01:15:04 2009] [31959:0000] [info]
ajp_send_request::jk_ajp_common.c (1241): (worker9) all endpoints
are disconnected
[Sat Jan 24 01:15:04 2009] [31959:0000] [info]
ajp_send_request::jk_ajp_common.c (1244): (worker9) increase the backend
idle connection timeout or the connection_pool_minsize
[Sat Jan 24 01:15:04 2009] [31959:0000] [info] ajp_service::jk_ajp_common.c (1941): (worker9) sending request to tomcat failed, recoverable operation
attempt=1
[Sat Jan 24 01:20:49 2009] [31828:0000] [info]
ajp_process_callback::jk_ajp_common.c (1448): Writing to client ab
orted or client network problems
[Sat Jan 24 01:20:49 2009] [31828:0000] [info] ajp_service::jk_ajp_common.c
(1857): (worker9) request failed, because of client write error without
recovery in send loop attempt=0
[Sat Jan 24 01:20:49 2009] [31828:0000] [info]  service::jk_lb_worker.c
(1068): unrecoverable error 200, request failed. Client failed in the middle
of request, we can't recover to another instance.
[Sat Jan 24 01:20:49 2009] [31828:0000] [info] jk_handler::mod_jk.c (2158):
Aborting connection for worker=routerExt3
[Sat Jan 24 01:20:54 2009] [22380:0000] [info]
ajp_process_callback::jk_ajp_common.c (1448): Writing to client ab
orted or client network problems
[Sat Jan 24 01:20:54 2009] [22380:0000] [info] ajp_service::jk_ajp_common.c
(1857): (worker9) request failed, because of client write error without
recovery in send loop attempt=0

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to