posted 15 years ago
I'm also getting this error, actually on three different servers, here's sample output:
Apr 13, 2010 6:18:06 PM org.apache.jk.common.MsgAjp processHeader
SEVERE: BAD packet signature 18245
Apr 13, 2010 6:18:06 PM org.apache.jk.common.ChannelSocket processConnection
SEVERE: Error, processing connection
java.lang.IndexOutOfBoundsException
at java.io.BufferedInputStream.read(BufferedInputStream.java:310)
at org.apache.jk.common.ChannelSocket.read(ChannelSocket.java:621)
at org.apache.jk.common.ChannelSocket.receive(ChannelSocket.java:578)
at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:686)
at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:891)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690)
at java.lang.Thread.run(Thread.java:619)
Apr 13, 2010 6:18:06 PM org.apache.jk.common.MsgAjp processHeader
SEVERE: BAD packet signature 18245
Apr 13, 2010 6:18:06 PM org.apache.jk.common.ChannelSocket processConnection
SEVERE: Error, processing connection
java.lang.IndexOutOfBoundsException
at java.io.BufferedInputStream.read(BufferedInputStream.java:310)
at org.apache.jk.common.ChannelSocket.read(ChannelSocket.java:621)
at org.apache.jk.common.ChannelSocket.receive(ChannelSocket.java:578)
at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:686)
at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:891)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690)
at java.lang.Thread.run(Thread.java:619)
Apr 13, 2010 6:18:06 PM org.apache.jk.common.MsgAjp processHeader
SEVERE: BAD packet signature 18245
Apr 13, 2010 6:18:06 PM org.apache.jk.common.ChannelSocket processConnection
SEVERE: Error, processing connection
java.lang.IndexOutOfBoundsException
at java.io.BufferedInputStream.read(BufferedInputStream.java:310)
at org.apache.jk.common.ChannelSocket.read(ChannelSocket.java:621)
at org.apache.jk.common.ChannelSocket.receive(ChannelSocket.java:578)
at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:686)
at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:891)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690)
at java.lang.Thread.run(Thread.java:619)
All three servers are reporting this error.
Server 1 is a CentOS 4 machines running these versions:
Apache HTTP 2.0.52-41.ent.7.centos4
Tomcat 6.0.14
mod_jk 1.2.25
Server 2 is a CentOS 4 machines running these versions:
Apache HTTP 2.0.52-41.ent.7.centos4
Tomcat 6.0.26
mod_jk 1.2.28-httpd-2.0.X.so
Server 3 is a CentOS 5 machines running these versions:
Apache HTTP 2.2.3-31.el5.centos.4
Tomcat 6.0.26
mod_jk 1.2.28-httpd-2.2.X.so
The really odd thing here is that I can't seem to find anything BROKEN in terms of apps/servelets. All the example jsp/servlets seem to be working fine, as does an in-house developed app. However there's a new issue, one that I do not believe is related to this error, but I've been asked to track down the source and fix it.
So what should I be looking for here? (I'm a system admin type, not a developer so my Tomcat/JSP knowledge is generally weak.)
The mod_jk files are up to date, and I'm using the correct binaries for the correct version of Apache HTTP on each system. The few posts on the site seem to indicate that this is a case of an AJP port getting input not in AJP format, but I'm not sure what would be doing that. I can make the following error occur simply by telneting to port 8009 (AJP 1.3 connector port) and typing random characters, but note that the "signature ####" is different when I do that:
SEVERE: BAD packet signature 25196
Apr 15, 2010 7:20:12 PM org.apache.jk.common.ChannelSocket processConnection
SEVERE: Error, processing connection
java.lang.IndexOutOfBoundsException
at java.io.BufferedInputStream.read(BufferedInputStream.java:310)
at org.apache.jk.common.ChannelSocket.read(ChannelSocket.java:621)
at org.apache.jk.common.ChannelSocket.receive(ChannelSocket.java:578)
at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:686)
at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:891)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690)
at java.lang.Thread.run(Thread.java:619)
That number seems to be dependent on the characters I type at the telnet prompt, as I seem to be able to generate the 18245 number if what I type on the telnet line is "GET" (case sensitive as "get" generates a 26469.)
So it seems like there is something that is doing an awful lot of GET requests on this port. Is there a likely culprit?
Thanks!