https://issues.apache.org/bugzilla/show_bug.cgi?id=44938
Summary: the thread http-80-SendFile-0 consumes 100% of CPU and slow tomcat responses Product: Tomcat 6 Version: 6.0.14 Platform: PC OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: Connectors AssignedTo: [EMAIL PROTECTED] ReportedBy: [EMAIL PROTECTED] Created an attachment (id=21924) --> (https://issues.apache.org/bugzilla/attachment.cgi?id=21924) stack when the CPU is at 100% Hi, Tomcat version is: 6.0.14 APR: installed via RPM apr-1.2.8-6 Apache Tomcat Native library 1.1.10 APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true]. Linux version: 2.6.23.1-10.fc7 #1 SMP i686 JVM version: Java HotSpot(TM) Server VM (build 1.5.0_15-b04, mixed mode) VM Options: -server -Djava.net.preferIPv4Stack=true -Xmn300m -Xms1280m -Xmx1280m i'm getting for weeks a problem, the tomcat consumes 100% of CPU for several minutes and tomcat responses is too slow and sometimes blocking, i cant figure what the problem until today, i manage to configure JConsole, to get that the thread that consumes all my CPU for this long period is the http-80-SendFile-0. i put a tcpdump capture, that capture all traffic in production and JConsole to get exact time that the problem occurs, then on wireshark i see many TCP checksum errors, i found a way to avoid checksum errors that is explained at: http://wiki.wireshark.org/TCP_checksum_offload since i think that the checksum isnt the real problem, because disabling the checksum made by ethernet board, dont solved the problem, i do more research and find something about TCP Window Scale Option explained on RFC 1323, and something about a problem at http://groups.apu.edu/awg/node/101 with that problems i run the follow command at Linux console: sysctl -w net.ipv4.tcp_window_scaling=0 whit this appears that the APR dont consumes all CPU anymore, then my question is, exists any know problem with APR and window scaling? or i'm get a wrong idea of what is the real problem? attached is the full stack when the CPU is consumed 100% by the http-80-SendFile-0, the thread Stack is: org.apache.tomcat.jni.Poll.poll(Native Method) org.apache.tomcat.util.net.AprEndpoint$Sendfile.run(AprEndpoint.java:1748) java.lang.Thread.run(Thread.java:595) all errors "Error occurred during stack walking:" in the attached stack is: java.lang.NullPointerException at sun.jvm.hotspot.runtime.Frame.addressOfStackSlot(Frame.java:214) at sun.jvm.hotspot.runtime.x86.X86Frame.getEntryFrameCallWrapper(X86Frame.java:452) at sun.jvm.hotspot.runtime.Frame.entryFrameIsFirst(Frame.java:379) at sun.jvm.hotspot.runtime.Frame.isFirstFrame(Frame.java:154) at sun.jvm.hotspot.runtime.VFrame.sender(VFrame.java:109) at sun.jvm.hotspot.runtime.VFrame.javaSender(VFrame.java:134) at sun.jvm.hotspot.tools.StackTrace.run(StackTrace.java:50) at sun.jvm.hotspot.tools.JStack.run(JStack.java:41) at sun.jvm.hotspot.tools.Tool.start(Tool.java:204) at sun.jvm.hotspot.tools.JStack.main(JStack.java:58) i really dont know if this is a tomcat BUG, or a problem with Linux/Firewalls and routers, but i wish to share here what i found and how much time this consumes to get a workaround. KR Clóvis -- Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]