You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cocoon.apache.org by Gintare Ragaisiene <gi...@gmail.com> on 2009/06/10 09:13:29 UTC

Mysterious exception in Tomcat logs : java.net.SocketException: Broken pipe

Hello everyone,

I've installed cocoon 2.2 webapp on Tomcat 6. For this I deployed .war file
in Tomact's webapps directory.
After a day I looked at the logs and found this exception:

Jun 9, 2009 8:31:51 PM org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet DispatcherServlet threw exception
java.net.SocketException: Broken pipe
    at java.net.SocketOutputStream.socketWrite0(Native Method)
    at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:92)
    at java.net.SocketOutputStream.write(SocketOutputStream.java:136)
    at
java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:65)
    at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:123)
    at com.mysql.jdbc.MysqlIO.send(MysqlIO.java:3121)
    at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1834)
    at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1976)
    at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2497)
    at com.mysql.jdbc.ConnectionImpl.setAutoCommit(ConnectionImpl.java:4692)
    at
org.apache.commons.dbcp.DelegatingConnection.setAutoCommit(DelegatingConnection.java:331)
    at
org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.setAutoCommit(PoolingDataSource.java:317)
    at
org.hibernate.transaction.JDBCTransaction.begin(JDBCTransaction.java:63)
    at
org.hibernate.impl.SessionImpl.beginTransaction(SessionImpl.java:1326)
    at
org.springframework.orm.hibernate3.HibernateTransactionManager.doBegin(HibernateTransactionManager.java:510)
    at
org.springframework.transaction.support.AbstractPlatformTransactionManager.getTransaction(AbstractPlatformTransactionManager.java:350)
    at
org.springframework.transaction.interceptor.TransactionAspectSupport.createTransactionIfNecessary(TransactionAspectSupport.java:262)
    at
org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:102)
    at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    at
org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
    at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    at
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
    at $Proxy28.selectCountry(Unknown Source)
    at
com.myclubbingguide.service.ClubbingGuideService.doIHaveSuchCountry(ClubbingGuideService.java:369)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.mozilla.javascript.MemberBox.invoke(MemberBox.java:155)
    at
org.mozilla.javascript.NativeJavaMethod.call(NativeJavaMethod.java:243)
    at
org.mozilla.javascript.Interpreter.interpretLoop(Interpreter.java:3237)
    at org.mozilla.javascript.Interpreter.interpret(Interpreter.java:2394)
    at
org.mozilla.javascript.InterpretedFunction.call(InterpretedFunction.java:162)
    at
org.apache.cocoon.forms.util.JavaScriptHelper.callFunction(JavaScriptHelper.java:245)
    at
org.apache.cocoon.forms.event.impl.JavaScriptWidgetListener.callScript(JavaScriptWidgetListener.java:64)
    at
org.apache.cocoon.forms.event.impl.JavaScriptWidgetListener$JSCreateListener.widgetCreated(JavaScriptWidgetListener.java:102)
    at
org.apache.cocoon.forms.formmodel.AbstractWidgetDefinition.fireCreateEvent(AbstractWidgetDefinition.java:235)
    at
org.apache.cocoon.forms.formmodel.AbstractWidget.broadcastEvent(AbstractWidget.java:297)
    at
org.apache.cocoon.forms.formmodel.Field.broadcastEvent(Field.java:657)
    at org.apache.cocoon.forms.formmodel.Form.fireEvents(Form.java:174)
    at org.apache.cocoon.forms.formmodel.Form.initialize(Form.java:99)
    at
org.apache.cocoon.forms.DefaultFormManager.createForm(DefaultFormManager.java:79)
    at
org.apache.cocoon.forms.DefaultFormManager.createForm(DefaultFormManager.java:68)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.mozilla.javascript.MemberBox.invoke(MemberBox.java:155)
    at
org.mozilla.javascript.NativeJavaMethod.call(NativeJavaMethod.java:243)
    at
org.mozilla.javascript.Interpreter.interpretLoop(Interpreter.java:3237)
    at org.mozilla.javascript.Interpreter.interpret(Interpreter.java:2394)
    at
org.mozilla.javascript.InterpretedFunction.call(InterpretedFunction.java:162)
    at
org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:393)
    at
org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:2834)
    at
org.mozilla.javascript.InterpretedFunction.call(InterpretedFunction.java:160)
    at org.mozilla.javascript.ScriptRuntime.call(ScriptRuntime.java:953)
    at
org.apache.cocoon.components.flow.javascript.fom.FOM_JavaScriptInterpreter.callFunction(FOM_JavaScriptInterpreter.java:620)
    at
org.apache.cocoon.components.treeprocessor.sitemap.CallFunctionNode.invoke(CallFunctionNode.java:109)
    at
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:55)
    at
org.apache.cocoon.components.treeprocessor.sitemap.MatchNode.invoke(MatchNode.java:87)
    at
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:78)
    at
org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:143)
    at
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:78)
    at
org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:81)
    at
org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:239)
    at
org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:171)
    at
org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:247)
    at
org.apache.cocoon.components.treeprocessor.sitemap.MountNode.invoke(MountNode.java:117)
    at
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:55)
    at
org.apache.cocoon.components.treeprocessor.sitemap.MatchNode.invoke(MatchNode.java:87)
    at
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:78)
    at
org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:143)
    at
org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:78)
    at
org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:81)
    at
org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:239)
    at
org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:171)
    at
org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:247)
    at
org.apache.cocoon.servlet.RequestProcessor.process(RequestProcessor.java:351)
    at
org.apache.cocoon.servlet.RequestProcessor.service(RequestProcessor.java:169)
    at
org.apache.cocoon.sitemap.SitemapServlet.service(SitemapServlet.java:84)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    at
org.apache.cocoon.servletservice.ServletServiceContext$PathDispatcher.forward(ServletServiceContext.java:468)
    at
org.apache.cocoon.servletservice.ServletServiceContext$PathDispatcher.forward(ServletServiceContext.java:443)
    at
org.apache.cocoon.servletservice.spring.ServletFactoryBean$ServiceInterceptor.invoke(ServletFactoryBean.java:264)
    at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    at
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
    at $Proxy3.service(Unknown Source)
    at
org.apache.cocoon.servletservice.DispatcherServlet.service(DispatcherServlet.java:106)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at
org.apache.cocoon.servlet.multipart.MultipartFilter.doFilter(MultipartFilter.java:131)
    at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at
com.myclubbinguide.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:118)
    at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
    at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
    at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
    at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190)
    at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:283)
    at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:767)
    at
org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:697)
    at
org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:889)
    at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690)
    at java.lang.Thread.run(Thread.java:619)

Do anybody knows or can explain to me what is wrong? Where I should research
farther about it? And maybe what outcome of this exception is?

Thank you,
Gintare

Re: Mysterious exception in Tomcat logs : java.net.SocketException: Broken pipe

Posted by Andy Stevens <in...@googlemail.com>.
2009/6/10 Gintare Ragaisiene <gi...@gmail.com>:
> Hello everyone,
>
> I've installed cocoon 2.2 webapp on Tomcat 6. For this I deployed .war file in Tomact's webapps directory.
> After a day I looked at the logs and found this exception:
>
> Jun 9, 2009 8:31:51 PM org.apache.catalina.core.StandardWrapperValve invoke
> SEVERE: Servlet.service() for servlet DispatcherServlet threw exception
> java.net.SocketException: Broken pipe
>     at java.net.SocketOutputStream.socketWrite0(Native Method)
>     at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:92)
>     at java.net.SocketOutputStream.write(SocketOutputStream.java:136)
>     at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:65)
>     at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:123)
>     at com.mysql.jdbc.MysqlIO.send(MysqlIO.java:3121)
>     at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1834)
>     at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1976)
>     at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2497)
>     at com.mysql.jdbc.ConnectionImpl.setAutoCommit(ConnectionImpl.java:4692)
...
> Do anybody knows or can explain to me what is wrong? Where I should research farther about it?
>And maybe what outcome of this exception is?
>
> Thank you,
> Gintare

"Broken pipe" usually means something tried to write to an established
socket connection, but the other end was no longer there or had closed
the connection prematurely.  I've seen it most often with the servlet
output stream or JSP writer, if the user hits the "stop" button in
their browser or closes it while the response is still being generated
and/or sent, or there's some networking problem along the way causes
the connection to die.

In your case, however, looks more like it was trying to issue some
command to the database due to a setAutoCommit call (BEGIN
TRANSACTION, maybe?) and discovered that the database was no longer
listening to that connection.  Perhaps the database had timed out the
connection due to inactivity, though in that case if things had closed
& cleaned up properly I'd have thought a "connection already closed"
type SQLException would be more likely next time the invalid
connection is got from the pool.  But maybe that depends on the
particular database driver; we don't use MySQL, so I can't say for
sure.  Do you get a lot of these exceptions or was this the only one?
Are you aware of any problems with the database or network around the
time this happened?  Was the database server restarted at that time?


Andy
-- 
http://pseudoq.sourceforge.net/  Open source java sudoku application

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@cocoon.apache.org
For additional commands, e-mail: users-help@cocoon.apache.org