> -----Original Message-----
> From: AleCaste [mailto:
alecaste@...]
> Sent: Friday, 3 July 2009 8:03 PM
> To:
user@...
> Subject: Re: [grails-user] Database connection problems after 8 hours
>
>
> Hello,
>
> It failed on me again after 2 days running...
> There must be something else...
> Using the IP address instead of localhost helps somehow, but apparently
> it
> does not make my app total broken-pipe-proof.
> Any further ideas?
>
> The error I've got after running the app for 2 days without user
> inactivity
> is:
>
> [#|2009-07-
> 03T11:53:03.935+0200|INFO|glassfish|null|_ThreadID=28;_ThreadName=Threa
> d-3;|2009-07-03
> 11:53:03,935 [httpWorkerThread-80-4] ERROR util.JDBCExceptionReporter
> -
> Communications link failure due to underlying exception:
>
> ** BEGIN NESTED EXCEPTION **
>
> java.net.SocketException
> MESSAGE: Broken pipe
>
> STACKTRACE:
>
> 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:2744)
> at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1612)
> at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1723)
> at com.mysql.jdbc.Connection.execSQL(Connection.java:3283)
> at
> com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java
> :1332)
> at
> com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1
> 604)
> at
> com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1
> 519)
> at
> com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1
> 504)
> at
> com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeUpdate(NewPro
> xyPreparedStatement.java:105)
> at
> org.hibernate.id.IdentityGenerator$GetGeneratedKeysDelegate.executeAndE
> xtract(IdentityGenerator.java:94)
> at
> org.hibernate.id.insert.AbstractReturningDelegate.performInsert(Abstrac
> tReturningDelegate.java:57)
> at
> org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractE
> ntityPersister.java:2186)
> at
> org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractE
> ntityPersister.java:2666)
> at
> org.hibernate.action.EntityIdentityInsertAction.execute(EntityIdentityI
> nsertAction.java:71)
> at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:279)
> at
> org.hibernate.event.def.AbstractSaveEventListener.performSaveOrReplicat
> e(AbstractSaveEventListener.java:321)
> at
> org.hibernate.event.def.AbstractSaveEventListener.performSave(AbstractS
> aveEventListener.java:204)
> at
> org.hibernate.event.def.AbstractSaveEventListener.saveWithGeneratedId(A
> bstractSaveEventListener.java:130)
> at
> org.hibernate.event.def.DefaultSaveOrUpdateEventListener.saveWithGenera
> tedOrRequestedId(DefaultSaveOrUpdateEventListener.java:210)
> at
> org.hibernate.event.def.DefaultSaveOrUpdateEventListener.entityIsTransi
> ent(DefaultSaveOrUpdateEventListener.java:195)
> at
> org.hibernate.event.def.DefaultSaveOrUpdateEventListener.performSaveOrU
> pdate(DefaultSaveOrUpdateEventListener.java:117)
> at
> org.hibernate.event.def.DefaultSaveOrUpdateEventListener.onSaveOrUpdate
> (DefaultSaveOrUpdateEventListener.java:93)
> at
> org.codehaus.groovy.grails.orm.hibernate.support.ClosureEventTriggering
> Interceptor.super$4$onSaveOrUpdate(ClosureEventTriggeringInterceptor.gr
> oovy)
> at sun.reflect.GeneratedMethodAccessor429.invoke(Unknown Source)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccesso
> rImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at
> org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:86
> )
> at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:234)
> at
> groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1061)
> at
> groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:910)
> at
> org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodOnSuperN(
> ScriptBytecodeAdapter.java:127)
> at
> org.codehaus.groovy.grails.orm.hibernate.support.ClosureEventTriggering
> Interceptor.onSaveOrUpdate(ClosureEventTriggeringInterceptor.groovy:91)
> at
> org.hibernate.impl.SessionImpl.fireSaveOrUpdate(SessionImpl.java:534)
> at
> org.hibernate.impl.SessionImpl.saveOrUpdate(SessionImpl.java:526)
> at
> org.hibernate.impl.SessionImpl.saveOrUpdate(SessionImpl.java:522)
> at sun.reflect.GeneratedMethodAccessor490.invoke(Unknown Source)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccesso
> rImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at
> org.springframework.orm.hibernate3.HibernateTemplate$CloseSuppressingIn
> vocationHandler.invoke(HibernateTemplate.java:1293)
> at $Proxy69.saveOrUpdate(Unknown Source)
> at
> org.codehaus.groovy.grails.orm.hibernate.metaclass.SavePersistentMethod
> $1.doInHibernate(SavePersistentMethod.java:54)
> at
> org.springframework.orm.hibernate3.HibernateTemplate.doExecute(Hibernat
> eTemplate.java:419)
> at
> org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateT
> emplate.java:339)
> at
> org.codehaus.groovy.grails.orm.hibernate.metaclass.SavePersistentMethod
> .performSave(SavePersistentMethod.java:52)
> at
> org.codehaus.groovy.grails.orm.hibernate.metaclass.AbstractSavePersiste
> ntMethod.doInvokeInternal(AbstractSavePersistentMethod.java:113)
> at
> org.codehaus.groovy.grails.orm.hibernate.metaclass.AbstractDynamicPersi
> stentMethod.invoke(AbstractDynamicPersistentMethod.java:52)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.ja
> va:39)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccesso
> rImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at
> org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite$PojoCachedMetho
> dSite.invoke(PojoMetaMethodSite.java:188)
> at
> org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.call(PojoMetaMe
> thodSite.java:52)
> at
> org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSite
> Array.java:43)
> at
> org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCall
> Site.java:116)
> at
> org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCall
> Site.java:132)
> at
> org.codehaus.groovy.grails.plugins.orm.hibernate.HibernatePluginSupport
> $_addBasicPersistenceMethods_closure61.doCall(HibernatePluginSupport.gr
> oovy:588)
> at sun.reflect.GeneratedMethodAccessor491.invoke(Unknown Source)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccesso
> rImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at
> org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:86
> )
> at
> org.codehaus.groovy.runtime.metaclass.ClosureMetaMethod.invoke(ClosureM
> etaMethod.java:81)
> at
> org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite$PogoMetaMethodS
> iteNoUnwrapNoCoerce.invoke(PogoMetaMethodSite.java:307)
> at
> org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.call(PogoMetaMe
> thodSite.java:63)
> at
> org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSite
> Array.java:43)
> at
> org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCall
> Site.java:116)
> at
> org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCall
> Site.java:124)
> at SearchController.saveGormObject(SearchController.groovy:677)
> at
> SearchController.this$2$saveGormObject(SearchController.groovy)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.ja
> va:39)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccesso
> rImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at
> org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:86
> )
> at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:234)
> at
> groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1061)
> at
> groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:910)
> at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892)
> at
> groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1009)
> at
> groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:910)
> at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892)
> at
> org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(Pogo
> MetaClassSite.java:66)
> at
> org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(C
> allSiteArray.java:47)
> at
> org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(Abstr
> actCallSite.java:142)
> at
> org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(Abstr
> actCallSite.java:150)
> at SearchController$_closure2.doCall(SearchController.groovy:93)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAcc|#]
>
> [#|2009-07-
> 03T11:53:03.937+0200|INFO|glassfish|null|_ThreadID=28;_ThreadName=Threa
> d-3;|essorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccesso
> rImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at
> org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite$PogoCachedMetho
> dSiteNoUnwrapNoCoerce.invoke(PogoMetaMethodSite.java:266)
> at
> org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(Pog
> oMetaMethodSite.java:51)
> at
> org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(C
> allSiteArray.java:47)
> at
> org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(Abstr
> actCallSite.java:142)
> at
> org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(Abstr
> actCallSite.java:150)
> at SearchController$_closure2.doCall(SearchController.groovy)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.ja
> va:39)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccesso
> rImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at
> org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:86
> )
> at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:234)
> at
> groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1061)
> at
> groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:910)
> at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892)
> at groovy.lang.Closure.call(Closure.java:279)
> at groovy.lang.Closure.call(Closure.java:274)
> at
> org.codehaus.groovy.grails.web.servlet.mvc.SimpleGrailsControllerHelper
> .handleAction(SimpleGrailsControllerHelper.java:363)
> at
> org.codehaus.groovy.grails.web.servlet.mvc.SimpleGrailsControllerHelper
> .executeAction(SimpleGrailsControllerHelper.java:243)
> at
> org.codehaus.groovy.grails.web.servlet.mvc.SimpleGrailsControllerHelper
> .handleURI(SimpleGrailsControllerHelper.java:203)
> at
> org.codehaus.groovy.grails.web.servlet.mvc.SimpleGrailsControllerHelper
> .handleURI(SimpleGrailsControllerHelper.java:138)
> at
> org.codehaus.groovy.grails.web.servlet.mvc.SimpleGrailsController.handl
> eRequest(SimpleGrailsController.java:88)
> at
> org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.hand
> le(SimpleControllerHandlerAdapter.java:48)
> at
> org.codehaus.groovy.grails.web.servlet.GrailsDispatcherServlet.doDispat
> ch(GrailsDispatcherServlet.java:264)
> at
> org.springframework.web.servlet.DispatcherServlet.doService(DispatcherS
> ervlet.java:807)
> at
> org.springframework.web.servlet.FrameworkServlet.processRequest(Framewo
> rkServlet.java:571)
> at
> org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServle
> t.java:511)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:754)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
> at
> org.apache.catalina.core.ApplicationFilterChain.servletService(Applicat
> ionFilterChain.java:431)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applic
> ationFilterChain.java:337)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFil
> terChain.java:218)
> at
> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerReq
> uestFilter.java:70)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applic
> ationFilterChain.java:250)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFil
> terChain.java:218)
> at
> org.apache.catalina.core.ApplicationDispatcher.doInvoke(ApplicationDisp
> atcher.java:883)
> at
> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispat
> cher.java:732)
> at
> org.apache.catalina.core.ApplicationDispatcher.processRequest(Applicati
> onDispatcher.java:554)
> at
> org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDis
> patcher.java:485)
> at
> org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispa
> tcher.java:377)
> at
> org.codehaus.groovy.grails.web.util.WebUtils.forwardRequestForUrlMappin
> gInfo(WebUtils.java:293)
> at
> org.codehaus.groovy.grails.web.util.WebUtils.forwardRequestForUrlMappin
> gInfo(WebUtils.java:269)
> at
> org.codehaus.groovy.grails.web.util.WebUtils.forwardRequestForUrlMappin
> gInfo(WebUtils.java:261)
> at
> org.codehaus.groovy.grails.web.mapping.filter.UrlMappingsFilter.doFilte
> rInternal(UrlMappingsFilter.java:181)
> at
> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerReq
> uestFilter.java:76)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applic
> ationFilterChain.java:250)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFil
> terChain.java:218)
> at
> org.codehaus.groovy.grails.web.sitemesh.GrailsPageFilter.obtainContent(
> GrailsPageFilter.java:171)
> at
> org.codehaus.groovy.grails.web.sitemesh.GrailsPageFilter.doFilter(Grail
> sPageFilter.java:110)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applic
> ationFilterChain.java:250)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFil
> terChain.java:218)
> at
> org.jsecurity.web.servlet.JSecurityFilter.doFilterInternal(JSecurityFil
> ter.java:382)
> at
> org.jsecurity.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestF
> ilter.java:180)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applic
> ationFilterChain.java:250)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFil
> terChain.java:218)
> at
> org.codehaus.groovy.grails.web.servlet.mvc.GrailsWebRequestFilter.doFil
> terInternal(GrailsWebRequestFilter.java:65)
> at
> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerReq
> uestFilter.java:76)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applic
> ationFilterChain.java:250)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFil
> terChain.java:218)
> at
> org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal
> (CharacterEncodingFilter.java:96)
> at
> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerReq
> uestFilter.java:76)
> at
> org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(Del
> egatingFilterProxy.java:236)
> at
> org.springframework.web.filter.DelegatingFilterProxy.doFilter(Delegatin
> gFilterProxy.java:167)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applic
> ationFilterChain.java:250)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFil
> terChain.java:218)
> at
> org.apache.catalina.core.StandardWrapperValve.preInvoke(StandardWrapper
> Valve.java:460)
> at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperVal
> ve.java:139)
> at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextVal
> ve.java:186)
> at
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.jav
> a:719)
> at
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.jav
> a:657)
> at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:96)
> at
> com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessio
> nLockingStandardPipeline.java:98)
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.jav
> a:187)
> at
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.jav
> a:719)
> at
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.jav
> a:657)
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:
> 651)
> at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1030)
> at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve
> .java:142)
> at
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.jav
> a:719)
> at
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.jav
> a:657)
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:
> 651)
> at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1030)
> at
> org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.jav
> a:325)
> at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:
> 242)
> at
> com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMa
> pper.java:180)
> at
> com.sun.grizzly.http.DefaultProcessorTask.invokeAdapter(DefaultProcesso
> rTask.java:633)
> at
> com.sun.grizzly.http.DefaultProcessorTask.doProcess(DefaultProcessorTas
> k.java:570)
> at com.sun.grizzly.http.DefaultProcessorT|#]
>
> [#|2009-07-
> 03T11:53:03.939+0200|INFO|glassfish|null|_ThreadID=28;_ThreadName=Threa
> d-3;|ask.process(DefaultProcessorTask.java:827)
> at
> com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilte
> r.java:152)
> at
> com.sun.enterprise.v3.services.impl.GlassfishProtocolChain.executeProto
> colFilter(GlassfishProtocolChain.java:71)
> at
> com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:
> 103)
> at
> com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:
> 89)
> at
> com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:7
> 6)
> at
> com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTas
> k.java:67)
> at
> com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.ja
> va:56)
> at
> com.sun.grizzly.util.WorkerThreadImpl.processTask(WorkerThreadImpl.java
> :325)
> at
> com.sun.grizzly.util.WorkerThreadImpl.run(WorkerThreadImpl.java:184)
>
>
> ** END NESTED EXCEPTION **
>
>
>
>
>
> I had this problem before. It's because of apparently abandoned
> sockets
> getting closed/cleaned up.
> Changing to the TCP/IP version (which you do by using *any* IP
> address)
> will fix this.
>
> ~~ Robert.
>
> --
> View this message in context:
http://www.nabble.com/Database-> connection-problems-after-8-hours-tp24261030p24320616.html
> Sent from the grails - user mailing list archive at Nabble.com.
>
>
> ---------------------------------------------------------------------
> To unsubscribe from this list, please visit:
>
>
http://xircles.codehaus.org/manage_email>