You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by Chris Stockton <ch...@symyx.com> on 2008/04/21 23:33:50 UTC

Tomcat hanging on a logging statement

I have a Struts web application that periodically hangs on a logging
statement.

The application hangs on this line

		DynaActionForm loginForm = (DynaActionForm) form;
		String username = loginForm.getString("username");
		String password = loginForm.getString("password");
		String redirect = loginForm.getString("redirect");

		log.log(Level.INFO, String.format("Logging in user
'%s'", username));
		// username is not null

My environment:
Tomcat 6.0.16
JVM 1.5.0_15 Sun
Windows XP

Has anyone else seen Tomcat hang on a logging statement?  I removed this
logging statement, then after some time, the application hanged on the
next logging statement it encountered.

I also got a thread dump from the JVM, but I can't make much sense of it

"http-80-5" daemon prio=6 tid=0x00aa99a8 nid=0x848 runnable
[0x479cf000..0x479cf ce8]
        at java.lang.StringBuffer.append(StringBuffer.java:322)
        at
java.text.SimpleDateFormat.zeroPaddingNumber(SimpleDateFormat.java:10
23)
        at
java.text.SimpleDateFormat.subFormat(SimpleDateFormat.java:987)
        at java.text.SimpleDateFormat.format(SimpleDateFormat.java:806)
        at java.text.SimpleDateFormat.format(SimpleDateFormat.java:778)
        at java.text.DateFormat.format(DateFormat.java:274)
        at java.text.Format.format(Format.java:133)
        at java.text.MessageFormat.subformat(MessageFormat.java:1279)
        at java.text.MessageFormat.format(MessageFormat.java:787)
        at
java.util.logging.SimpleFormatter.format(SimpleFormatter.java:50)
        - locked <0x22bb0858> (a java.util.logging.SimpleFormatter)
        at
java.util.logging.StreamHandler.publish(StreamHandler.java:179)
        - locked <0x22bb0728> (a java.util.logging.ConsoleHandler)
        at
java.util.logging.ConsoleHandler.publish(ConsoleHandler.java:88)
        at java.util.logging.Logger.log(Logger.java:452)
        at java.util.logging.Logger.doLog(Logger.java:474)
        at java.util.logging.Logger.log(Logger.java:497)
        at
com.symyx.its.webapp.action.LoginAction.execute(LoginAction.java:66)
        at
org.apache.struts.action.RequestProcessor.processActionPerform(Reques
tProcessor.java:431)
        at
org.apache.struts.action.RequestProcessor.process(RequestProcessor.ja
va:236)
        at
org.apache.struts.action.ActionServlet.process(ActionServlet.java:119
6)
        at
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)

        at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:290)
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:206)
        at
com.symyx.its.webapp.filter.EnsureUserLoggedInFilter.doFilter(EnsureU
serLoggedInFilter.java:59)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:235)
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:206)
        at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
alve.java:233)
        at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
alve.java:175)
        at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
ava:128)
        at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
ava:102)
        at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
ve.java:109)
        at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
a:286)
        at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
:844)
        at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.proce
ss(Http11Protocol.java:583)
        at
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:44
7)
        at java.lang.Thread.run(Thread.java:595)

"http-80-4" daemon prio=6 tid=0x475709a0 nid=0xaf4 waiting for monitor
entry [0x 4798f000..0x4798fc68]
        at
java.util.logging.StreamHandler.publish(StreamHandler.java:174)
        - waiting to lock <0x22bb0728> (a
java.util.logging.ConsoleHandler)
        at
java.util.logging.ConsoleHandler.publish(ConsoleHandler.java:88)
        at java.util.logging.Logger.log(Logger.java:452)
        at java.util.logging.Logger.doLog(Logger.java:474)
        at java.util.logging.Logger.log(Logger.java:497)
        at
com.symyx.its.webapp.auth.ITSAuthenticatorImpl.authenticateUser(ITSAu
thenticatorImpl.java:36)
        at
com.symyx.its.webapp.action.LoginAction.execute(LoginAction.java:71)
        at
org.apache.struts.action.RequestProcessor.processActionPerform(Reques
tProcessor.java:431)
        at
org.apache.struts.action.RequestProcessor.process(RequestProcessor.ja
va:236)
        at
org.apache.struts.action.ActionServlet.process(ActionServlet.java:119
6)
        at
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)

        at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:290)
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:206)
        at
com.symyx.its.webapp.filter.EnsureUserLoggedInFilter.doFilter(EnsureU
serLoggedInFilter.java:59)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:235)
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:206)
        at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
alve.java:233)
        at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
alve.java:175)
        at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
ava:128)
        at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
ava:102)
        at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
ve.java:109)
        at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
a:286)
        at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
:844)
        at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.proce
ss(Http11Protocol.java:583)
        at
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:44
7)
        at java.lang.Thread.run(Thread.java:595)

"http-80-3" daemon prio=6 tid=0x47248bc0 nid=0xc98 in Object.wait()
[0x4794f000.
.0x4794fd68]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x02be52a8> (a
org.apache.tomcat.util.net.JIoEndpoint$Work
er)
        at java.lang.Object.wait(Object.java:474)
        at
org.apache.tomcat.util.net.JIoEndpoint$Worker.await(JIoEndpoint.java:
416)
        - locked <0x02be52a8> (a
org.apache.tomcat.util.net.JIoEndpoint$Worker)
        at
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:44
2)
        at java.lang.Thread.run(Thread.java:595)

"http-80-2" daemon prio=6 tid=0x47302e68 nid=0xbfc in Object.wait()
[0x4784f000.
.0x4784f9e8]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x02be5088> (a
org.apache.tomcat.util.net.JIoEndpoint$Work
er)
        at java.lang.Object.wait(Object.java:474)
        at
org.apache.tomcat.util.net.JIoEndpoint$Worker.await(JIoEndpoint.java:
416)
        - locked <0x02be5088> (a
org.apache.tomcat.util.net.JIoEndpoint$Worker)
        at
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:44
2)
        at java.lang.Thread.run(Thread.java:595)



=======
Notice: This e-mail message, together with any attachments, contains
information of Symyx Technologies, Inc. or any of its affiliates or
subsidiaries that may be confidential, proprietary, copyrighted,
privileged and/or protected work product, and is meant solely for
the intended recipient. If you are not the intended recipient, and
have received this message in error, please contact the sender
immediately, permanently delete the original and any copies of this
email and any attachments thereto.

---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org