Hello.

Please, I appreciate if someone could help me answering some questions:

I'm working on an issue that I sent to the Tomcat users mailing list 
(http://tomcat.markmail.org/search/?q=#query:%20list%3Aorg.apache.tomcat.users+page:5+mid:4w7j4oqnuxwkz67c+state:results).

I have some questions:
1. Are the error messages below caused by Apache waiting for a response from 
Tomcat which never comes? There's no directly corresponding error message in 
the Tomcat logs, some errors are past or before the dates on the Apache log;
2. After the node enters the "error state" what happens to the existing 
connections to this Tomcat instance?

[Thu May 31 10:15:47 2012] [error] (OS 10060)A connection attempt failed 
because the connected party did not properly respond after a period of time, or 
established connection failed because connected host has failed to respond.  : 
ajp_ilink_receive() can't receive header
[Thu May 31 10:15:47 2012] [error] ajp_read_header: ajp_ilink_receive failed
[Thu May 31 10:15:47 2012] [error] (70007)The timeout specified has expired: 
proxy: dialog to 127.0.0.1:9109 (127.0.0.1) failed
[Thu May 31 10:15:49 2012] [error] proxy: BALANCER: (balancer://wlb). All 
workers are in error state for route (wt2)
[Thu May 31 10:15:50 2012] [error] proxy: BALANCER: (balancer://wlb). All 
workers are in error state for route (wt2)
[Thu May 31 10:15:51 2012] [error] proxy: BALANCER: (balancer://wlb). All 
workers are in error state for route (wt2)

We were suspecting on a TCP/IP stack issue (or something related) but 
everything works fine (no other connection problems), only this application 
shows these errors. I'm suspecting this is caused by some misbehavior in the 
application, which in turn, causes other problems due to the node entering the 
"error state".
Apache is proxying to 2 Tomcat instances (this application) and to 1 third 
application (which doesn't suffer any problem).

Apache is version 2.2.22, Tomcat 6.0.29 (same thing with 6.0.20).
This single error puts the worker in "error state", which is bad, and the fix 
from 2.2.22 to overcome this kind of situation doesn't cover this specific case.

The configuration used in Apache HTTP is:
ServerSignature Off
ServerTokens Prod
Timeout 600
LimitRequestFieldSize 20480
ProxyIOBufferSize 21504
ProxyRequests Off
ProxyPreserveHost On
<Proxy *>
  Order deny,allow
  Allow from all
</Proxy>
<Proxy balancer://wlb>
  BalancerMember ajp://10.11.102.224:9109 route=wt1 loadfactor=50 max=85 
ttl=120 retry=5 connectiontimeout=5000ms ping=5000ms
  BalancerMember ajp://127.0.0.1:9109 route=wt2 loadfactor=50 max=85 ttl=120 
retry=5 connectiontimeout=5000ms ping=5000ms
</Proxy>
ProxyPass /app1 balancer://wlb/app1 stickysession=JSESSIONID nofailover=On
ProxyPass /app2 ajp://10.11.102.219:8009/app2

The AJP connector in Tomcat (app1):
<Connector port="9109" protocol="AJP/1.3" redirectPort="8443" 
packetSize="22528" maxThreads="200" connectionTimeout="120000"/>


Thanks a lot.
Roney



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

Reply via email to