TC 7.0.54, RHEL 6, JDK 1.7.0_60. I have two RH servers with one instance of
TC on each, set up for clustering. There's a HWLB routing 80 to 8080 with 5
min sticky sessions.

My daily catalina logs are set up to just show SEVERE errors, every day
they average about *30mb* per server with the same set of errors, over and
over:


Aug 21, 2014 12:00:04 AM org.apache.catalina.core.StandardWrapperValve
invoke
SEVERE: Servlet.service() for servlet [GetLevelServlet] in context with
path [] threw exception
java.lang.NullPointerException

Aug 21, 2014 12:00:04 AM org.apache.coyote.http11.AbstractHttp11Processor
process
SEVERE: Error processing request
java.lang.NullPointerException

Aug 21, 2014 12:00:04 AM org.apache.coyote.http11.AbstractHttp11Processor
endRequest
SEVERE: Error finishing response
java.lang.NullPointerException

Aug 21, 2014 12:00:13 AM org.apache.catalina.core.StandardWrapperValve
invoke
SEVERE: Servlet.service() for servlet [GetLevelServlet] in context with
path [] threw exception
java.lang.NullPointerException

Aug 21, 2014 12:00:13 AM org.apache.coyote.http11.AbstractHttp11Processor
process
SEVERE: Error processing request
java.lang.NullPointerException

Aug 21, 2014 12:00:13 AM org.apache.coyote.http11.AbstractHttp11Processor
endRequest
SEVERE: Error finishing response
java.lang.NullPointerException


GetLevelServlet is the workhorse of the site, providing XML to a SWF
through a simple method:


protected void writeXML(HttpServletResponse res, String xml) throws
IOException {

        if (xml == null || xml.isEmpty()) return;

        res.setContentType("text/xml");
        PrintWriter out = res.getWriter();
        out.write(xml);
        out.close();
}



About 99% of the site usage is through that servlet. I'm catching all 500
errors and logging them with Logback to a different log file, and I'm not
seeing the NPE's generated on the application level (i.e., com.mysite.*)

I'm using the NIO connector.


<!-- Using the non blocking NIO connector -->
      <Connector port="8080"
protocol="org.apache.coyote.http11.Http11NioProtocol"
                   connectionTimeout="20000"
                   redirectPort="443"
                   maxConnections="7500"
                   maxThreads="400"
                   />


There's a sizable download (8mg) for the SWF (it's a game site). So
useSendFile being on (the default) works incredibly well. The errors in
catalina aren't presenting on the site as much as they are in the logs,
that is, the site seems to be behaving reasonably well despite the enormous
amount of errors in the logs.

Anyone know what might be causing it?

Best,
John

Reply via email to