Hi all,
I'm currently having troubles with the couple Catalina 4.0.2 and Apache
1.3.17.
It seems that the connection between mod_jk and the jvm is not stable enough
to
handle the load.
Our machines (there are two of them) are Netra X1 from Sun, running solaris
8:
5.8 Generic_108528-10.
The JVM we use are JDK 1.3.1 02. I've checked the 1.3.1 03 doesn't seem to
correct
anything in that field, or does it ?
Here are some outputs:
Tomcat stdout.log :
Ajp13Processor[9000][85] process: invoke
java.io.IOException: Broken pipe
at java.net.SocketOutputStream.socketWrite(Native Method)
at java.net.SocketOutputStream.write(SocketOutputStream.java:83)
at org.apache.ajp.Ajp13.send(Ajp13.java:525)
at org.apache.ajp.RequestHandler.finish(RequestHandler.java:496)
at org.apache.ajp.Ajp13.finish(Ajp13.java:395)
at
org.apache.ajp.tomcat4.Ajp13Response.finishResponse(Ajp13Response.java:192)
at
org.apache.ajp.tomcat4.Ajp13Processor.process(Ajp13Processor.java:435)
at
org.apache.ajp.tomcat4.Ajp13Processor.run(Ajp13Processor.java:495)
at java.lang.Thread.run(Thread.java:484)
Mod_jk.log :
[Wed Apr 24 17:26:11 2002] [jk_ajp_common.c (932)]: Error
ajp_process_callback - write failed
[Wed Apr 24 17:26:25 2002] [jk_ajp_common.c (932)]: Error
ajp_process_callback - write failed
[Wed Apr 24 17:26:33 2002] [jk_ajp_common.c (932)]: Error
ajp_process_callback - write failed
[Wed Apr 24 17:26:33 2002] [jk_ajp_common.c (932)]: Error
ajp_process_callback - write failed
[Wed Apr 24 17:26:58 2002] [jk_ajp_common.c (932)]: Error
ajp_process_callback - write failed
[Wed Apr 24 17:29:30 2002] [jk_connect.c (151)]: jk_open_socket, connect()
failed errno = 146
[Wed Apr 24 17:29:30 2002] [jk_ajp_common.c (598)]: In
jk_endpoint_t::ajp_connect_to_endpoint, failed errno = 146
[Wed Apr 24 17:29:30 2002] [jk_ajp_common.c (843)]: Error connecting to the
Tomcat process.
[Wed Apr 24 17:29:30 2002] [jk_ajp_common.c (1149)]: In
jk_endpoint_t::service, ajp_send_request failed in send loop 0
[Wed Apr 24 17:29:30 2002] [jk_connect.c (151)]: jk_open_socket, connect()
failed errno = 146
[Wed Apr 24 17:29:30 2002] [jk_ajp_common.c (598)]: In
jk_endpoint_t::ajp_connect_to_endpoint, failed errno = 146
[Wed Apr 24 17:29:30 2002] [jk_ajp_common.c (843)]: Error connecting to the
Tomcat process.
[Wed Apr 24 17:29:30 2002] [jk_ajp_common.c (1149)]: In
jk_endpoint_t::service, ajp_send_request failed in send loop 1
[Wed Apr 24 17:29:30 2002] [jk_connect.c (151)]: jk_open_socket, connect()
failed errno = 146
[Wed Apr 24 17:29:30 2002] [jk_ajp_common.c (598)]: In
jk_endpoint_t::ajp_connect_to_endpoint, failed errno = 146
[Wed Apr 24 17:29:30 2002] [jk_ajp_common.c (843)]: Error connecting to the
Tomcat process.
[Wed Apr 24 17:29:30 2002] [jk_ajp_common.c (1149)]: In
jk_endpoint_t::service, ajp_send_request failed in send loop 2
JVM truss logs (lots of these) :
25955/46: read(51, "12 4\0\0", 4) = 4
25955/46: send(51, " A B\003061FFA", 7, 0) = 7
25955/46: read(51, "12 4\0\0", 4) = 4
25955/46: send(51, " A B\003061FFA", 7, 0) = 7
25955/46: read(51, "12 4\0\0", 4) = 4
25955/46: send(51, " A B\003061FFA", 7, 0) = 7
25955/46: read(51, "12 4\0\0", 4) = 4
25955/46: send(51, " A B\003061FFA", 7, 0) = 7
25955/46: read(51, "12 4\0\0", 4) = 4
25955/46: send(51, " A B\003061FFA", 7, 0) = 7
25955/46: read(51, "12 4\0\0", 4) = 4
25955/46: send(51, " A B\003061FFA", 7, 0) = 7
25955/46: read(51, "12 4\0\0", 4) = 4
25955/46: send(51, " A B\003061FFA", 7, 0) = 7
Httpd truss log (lots of these) :
26417/1: send(7, "12 4\0\0", 4, 0) = 4
26417/1: recv(7, " A B\003", 4, 0) = 4
26417/1: recv(7, "061FFA", 3, 0) = 3
26417/1: send(7, "12 4\0\0", 4, 0) = 4
26417/1: recv(7, " A B\003", 4, 0) = 4
26417/1: recv(7, "061FFA", 3, 0) = 3
26417/1: send(7, "12 4\0\0", 4, 0) = 4
26417/1: recv(7, " A B\003", 4, 0) = 4
26417/1: recv(7, "061FFA", 3, 0) = 3
26417/1: send(7, "12 4\0\0", 4, 0) = 4
26417/1: recv(7, " A B\003", 4, 0) = 4
26417/1: recv(7, "061FFA", 3, 0) = 3
26417/1: send(7, "12 4\0\0", 4, 0) = 4
26417/1: recv(7, " A B\003", 4, 0) = 4
26417/1: recv(7, "061FFA", 3, 0) = 3
26417/1: send(7, "12 4\0\0", 4, 0) = 4
It appears that the socket between the two (mod_jk and the JVM) has
been closed somehow and without reason and the two processes then spend
their time to send and read a few bytes on their respective file descriptor.
Here is a top output:
load averages: 10.27, 9.54, 7.00
20:10:48
144 processes: 136 sleeping, 7 running, 1 on cpu
CPU states: % idle, % user, % kernel, % iowait, % swap
Memory: 512M real, 286M free, 165M swap in use, 4302M swap free
PID USERNAME THR PRI NICE SIZE RES STATE TIME CPU COMMAND
25955 X 95 48 0 108M 69M run 46:56 48.11% java
27610 X 1 48 0 3296K 1992K run 0:39 5.32% httpd
25969 X 1 57 0 3304K 2056K sleep 20:32 5.26% httpd
25966 X 1 48 0 3320K 2088K run 0:40 5.03% httpd
27586 X 1 44 0 3296K 2008K run 0:39 4.90% httpd
25970 X 1 56 0 3320K 2088K sleep 0:40 4.86% httpd
26417 X 1 57 0 3296K 2008K sleep 13:56 4.71% httpd
25976 X 1 46 0 3312K 2072K run 0:40 4.29% httpd
25977 X 1 58 0 3312K 2072K sleep 0:41 4.23% httpd
26010 X 1 48 0 3296K 2040K run 0:41 3.72% httpd
....
Maybe someone could help with this one...
Thx in advance,
LD
----------------------------------------------
Laurent Denel
Ingenieur systeme - Unite Services & Solutions
AtosOrigin Multimedia - +33 (0)3 20 60 8029
--
To unsubscribe: <mailto:[EMAIL PROTECTED]>
For additional commands: <mailto:[EMAIL PROTECTED]>
Troubles with the list: <mailto:[EMAIL PROTECTED]>