You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@wookie.apache.org by "Scott Wilson (JIRA)" <ji...@apache.org> on 2013/03/06 11:06:12 UTC

[jira] [Commented] (WOOKIE-404) Server crashed after long wait, while reloading widget

    [ https://issues.apache.org/jira/browse/WOOKIE-404?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13594565#comment-13594565 ] 

Scott Wilson commented on WOOKIE-404:
-------------------------------------

Some more ideas here:

http://stackoverflow.com/questions/5636195/dbcp-and-hibernate-on-spring-doesnt-re-open-dead-connections-why


                
> Server crashed after long wait, while reloading widget
> ------------------------------------------------------
>
>                 Key: WOOKIE-404
>                 URL: https://issues.apache.org/jira/browse/WOOKIE-404
>             Project: Wookie
>          Issue Type: Bug
>          Components: Server
>    Affects Versions: 0.16.0
>         Environment: Java vm 6.x, tomcat 6.0.36
>            Reporter: Gonzalo Aguilar
>
> Server crashed after reloading a widget. 
> Situation is as follows:
> 1.-) Widget loaded in a portal. In my case Rave but I suppose it will do the same in whatever portal you try. 
> 2.-) Once the widget is loaded I leaved it overnight. 
> 3.-) I tried to reload the widget (by moving it). So the server initiated a reload. 
> 4.-) Stack trace as follows. 
> Expected behavior is take over db connection and reconnect if neccesary. 
> ------ Stack trace ----
> Estado HTTP 500 - La ejecución del Filtro lanzó una excepción
> type Informe de Excepción
> mensaje La ejecución del Filtro lanzó una excepción
> descripción El servidor encontró un error interno que hizo que no pudiera rellenar este requerimiento.
> excepción
> javax.servlet.ServletException: La ejecución del Filtro lanzó una excepción
> 	org.apache.wookie.server.MainFilter.doFilter(MainFilter.java:63)
> causa raíz
> java.lang.ExceptionInInitializerError
> 	org.apache.openjpa.lib.util.ConcreteClassGenerator.newInstance(ConcreteClassGenerator.java:132)
> 	org.apache.openjpa.lib.jdbc.ConfiguringConnectionDecorator.decorate(ConfiguringConnectionDecorator.java:107)
> 	org.apache.openjpa.lib.jdbc.DecoratingDataSource.decorate(DecoratingDataSource.java:118)
> 	org.apache.openjpa.lib.jdbc.DecoratingDataSource.getConnection(DecoratingDataSource.java:107)
> 	org.apache.openjpa.jdbc.kernel.JDBCStoreManager.connectInternal(JDBCStoreManager.java:998)
> 	org.apache.openjpa.jdbc.kernel.JDBCStoreManager.connect(JDBCStoreManager.java:983)
> 	org.apache.openjpa.jdbc.kernel.JDBCStoreManager.getConnection(JDBCStoreManager.java:286)
> 	org.apache.openjpa.jdbc.kernel.PreparedSQLStoreQuery$PreparedSQLExecutor.executeQuery(PreparedSQLStoreQuery.java:103)
> 	org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:1003)
> 	org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:861)
> 	org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:792)
> 	org.apache.openjpa.kernel.DelegatingQuery.execute(DelegatingQuery.java:542)
> 	org.apache.openjpa.persistence.QueryImpl.execute(QueryImpl.java:288)
> 	org.apache.openjpa.persistence.QueryImpl.getResultList(QueryImpl.java:302)
> 	org.apache.openjpa.persistence.QueryImpl.getSingleResult(QueryImpl.java:326)
> 	org.apache.wookie.beans.jpa.JPAPersistenceManager.findWidgetInstanceByIdKey(JPAPersistenceManager.java:696)
> 	org.apache.wookie.server.LocalizedResourceFilter.getWidgetFromRequest(LocalizedResourceFilter.java:245)
> 	org.apache.wookie.server.LocalizedResourceFilter.doFilter(LocalizedResourceFilter.java:74)
> 	org.apache.wookie.server.MainFilter.doFilter(MainFilter.java:63)
> causa raíz
> java.lang.reflect.InvocationTargetException
> 	sun.reflect.GeneratedConstructorAccessor74.newInstance(Unknown Source)
> 	sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
> 	java.lang.reflect.Constructor.newInstance(Constructor.java:532)
> 	org.apache.openjpa.lib.util.ConcreteClassGenerator.newInstance(ConcreteClassGenerator.java:130)
> 	org.apache.openjpa.lib.jdbc.ConfiguringConnectionDecorator.decorate(ConfiguringConnectionDecorator.java:107)
> 	org.apache.openjpa.lib.jdbc.DecoratingDataSource.decorate(DecoratingDataSource.java:118)
> 	org.apache.openjpa.lib.jdbc.DecoratingDataSource.getConnection(DecoratingDataSource.java:107)
> 	org.apache.openjpa.jdbc.kernel.JDBCStoreManager.connectInternal(JDBCStoreManager.java:998)
> 	org.apache.openjpa.jdbc.kernel.JDBCStoreManager.connect(JDBCStoreManager.java:983)
> 	org.apache.openjpa.jdbc.kernel.JDBCStoreManager.getConnection(JDBCStoreManager.java:286)
> 	org.apache.openjpa.jdbc.kernel.PreparedSQLStoreQuery$PreparedSQLExecutor.executeQuery(PreparedSQLStoreQuery.java:103)
> 	org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:1003)
> 	org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:861)
> 	org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:792)
> 	org.apache.openjpa.kernel.DelegatingQuery.execute(DelegatingQuery.java:542)
> 	org.apache.openjpa.persistence.QueryImpl.execute(QueryImpl.java:288)
> 	org.apache.openjpa.persistence.QueryImpl.getResultList(QueryImpl.java:302)
> 	org.apache.openjpa.persistence.QueryImpl.getSingleResult(QueryImpl.java:326)
> 	org.apache.wookie.beans.jpa.JPAPersistenceManager.findWidgetInstanceByIdKey(JPAPersistenceManager.java:696)
> 	org.apache.wookie.server.LocalizedResourceFilter.getWidgetFromRequest(LocalizedResourceFilter.java:245)
> 	org.apache.wookie.server.LocalizedResourceFilter.doFilter(LocalizedResourceFilter.java:74)
> 	org.apache.wookie.server.MainFilter.doFilter(MainFilter.java:63)
> causa raíz
> com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: The last packet successfully received from the server was 42.336.211 milliseconds ago.  The last packet sent successfully to the server was 42.336.211 milliseconds ago. is longer than the server configured value of 'wait_timeout'. You should consider either expiring and/or testing connection validity before use in your application, increasing the server configured values for client timeouts, or using the Connector/J connection property 'autoReconnect=true' to avoid this problem.
> 	sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
> 	sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
> 	sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
> 	java.lang.reflect.Constructor.newInstance(Constructor.java:532)
> 	com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
> 	com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1116)
> 	com.mysql.jdbc.MysqlIO.send(MysqlIO.java:3352)
> 	com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1971)
> 	com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2151)
> 	com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2619)
> 	com.mysql.jdbc.ConnectionImpl.setAutoCommit(ConnectionImpl.java:4997)
> 	org.apache.tomcat.dbcp.dbcp.DelegatingConnection.setAutoCommit(DelegatingConnection.java:371)
> 	org.apache.tomcat.dbcp.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.setAutoCommit(PoolingDataSource.java:328)
> 	org.apache.openjpa.lib.jdbc.DelegatingConnection.setAutoCommit(DelegatingConnection.java:220)
> 	org.apache.openjpa.lib.jdbc.DelegatingConnection.setAutoCommit(DelegatingConnection.java:220)
> 	org.apache.openjpa.lib.jdbc.ConfiguringConnectionDecorator$ConfiguringConnection.setAutoCommit(ConfiguringConnectionDecorator.java:132)
> 	org.apache.openjpa.lib.jdbc.ConfiguringConnectionDecorator$ConfiguringConnection.<init>(ConfiguringConnectionDecorator.java:126)
> 	org.apache.openjpa.lib.jdbc.ConfiguringConnectionDecorator$ConfiguringConnection_.<init>(Unknown Source)
> 	sun.reflect.GeneratedConstructorAccessor74.newInstance(Unknown Source)
> 	sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
> 	java.lang.reflect.Constructor.newInstance(Constructor.java:532)
> 	org.apache.openjpa.lib.util.ConcreteClassGenerator.newInstance(ConcreteClassGenerator.java:130)
> 	org.apache.openjpa.lib.jdbc.ConfiguringConnectionDecorator.decorate(ConfiguringConnectionDecorator.java:107)
> 	org.apache.openjpa.lib.jdbc.DecoratingDataSource.decorate(DecoratingDataSource.java:118)
> 	org.apache.openjpa.lib.jdbc.DecoratingDataSource.getConnection(DecoratingDataSource.java:107)
> 	org.apache.openjpa.jdbc.kernel.JDBCStoreManager.connectInternal(JDBCStoreManager.java:998)
> 	org.apache.openjpa.jdbc.kernel.JDBCStoreManager.connect(JDBCStoreManager.java:983)
> 	org.apache.openjpa.jdbc.kernel.JDBCStoreManager.getConnection(JDBCStoreManager.java:286)
> 	org.apache.openjpa.jdbc.kernel.PreparedSQLStoreQuery$PreparedSQLExecutor.executeQuery(PreparedSQLStoreQuery.java:103)
> 	org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:1003)
> 	org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:861)
> 	org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:792)
> 	org.apache.openjpa.kernel.DelegatingQuery.execute(DelegatingQuery.java:542)
> 	org.apache.openjpa.persistence.QueryImpl.execute(QueryImpl.java:288)
> 	org.apache.openjpa.persistence.QueryImpl.getResultList(QueryImpl.java:302)
> 	org.apache.openjpa.persistence.QueryImpl.getSingleResult(QueryImpl.java:326)
> 	org.apache.wookie.beans.jpa.JPAPersistenceManager.findWidgetInstanceByIdKey(JPAPersistenceManager.java:696)
> 	org.apache.wookie.server.LocalizedResourceFilter.getWidgetFromRequest(LocalizedResourceFilter.java:245)
> 	org.apache.wookie.server.LocalizedResourceFilter.doFilter(LocalizedResourceFilter.java:74)
> 	org.apache.wookie.server.MainFilter.doFilter(MainFilter.java:63)
> causa raíz
> java.net.SocketException: Broken pipe
> 	java.net.SocketOutputStream.socketWrite0(Native Method)
> 	java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:109)
> 	java.net.SocketOutputStream.write(SocketOutputStream.java:153)
> 	java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82)
> 	java.io.BufferedOutputStream.flush(BufferedOutputStream.java:140)
> 	com.mysql.jdbc.MysqlIO.send(MysqlIO.java:3333)
> 	com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1971)
> 	com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2151)
> 	com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2619)
> 	com.mysql.jdbc.ConnectionImpl.setAutoCommit(ConnectionImpl.java:4997)
> 	org.apache.tomcat.dbcp.dbcp.DelegatingConnection.setAutoCommit(DelegatingConnection.java:371)
> 	org.apache.tomcat.dbcp.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.setAutoCommit(PoolingDataSource.java:328)
> 	org.apache.openjpa.lib.jdbc.DelegatingConnection.setAutoCommit(DelegatingConnection.java:220)
> 	org.apache.openjpa.lib.jdbc.DelegatingConnection.setAutoCommit(DelegatingConnection.java:220)
> 	org.apache.openjpa.lib.jdbc.ConfiguringConnectionDecorator$ConfiguringConnection.setAutoCommit(ConfiguringConnectionDecorator.java:132)
> 	org.apache.openjpa.lib.jdbc.ConfiguringConnectionDecorator$ConfiguringConnection.<init>(ConfiguringConnectionDecorator.java:126)
> 	org.apache.openjpa.lib.jdbc.ConfiguringConnectionDecorator$ConfiguringConnection_.<init>(Unknown Source)
> 	sun.reflect.GeneratedConstructorAccessor74.newInstance(Unknown Source)
> 	sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
> 	java.lang.reflect.Constructor.newInstance(Constructor.java:532)
> 	org.apache.openjpa.lib.util.ConcreteClassGenerator.newInstance(ConcreteClassGenerator.java:130)
> 	org.apache.openjpa.lib.jdbc.ConfiguringConnectionDecorator.decorate(ConfiguringConnectionDecorator.java:107)
> 	org.apache.openjpa.lib.jdbc.DecoratingDataSource.decorate(DecoratingDataSource.java:118)
> 	org.apache.openjpa.lib.jdbc.DecoratingDataSource.getConnection(DecoratingDataSource.java:107)
> 	org.apache.openjpa.jdbc.kernel.JDBCStoreManager.connectInternal(JDBCStoreManager.java:998)
> 	org.apache.openjpa.jdbc.kernel.JDBCStoreManager.connect(JDBCStoreManager.java:983)
> 	org.apache.openjpa.jdbc.kernel.JDBCStoreManager.getConnection(JDBCStoreManager.java:286)
> 	org.apache.openjpa.jdbc.kernel.PreparedSQLStoreQuery$PreparedSQLExecutor.executeQuery(PreparedSQLStoreQuery.java:103)
> 	org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:1003)
> 	org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:861)
> 	org.apache.openjpa.kernel.QueryImpl.execute(QueryImpl.java:792)
> 	org.apache.openjpa.kernel.DelegatingQuery.execute(DelegatingQuery.java:542)
> 	org.apache.openjpa.persistence.QueryImpl.execute(QueryImpl.java:288)
> 	org.apache.openjpa.persistence.QueryImpl.getResultList(QueryImpl.java:302)
> 	org.apache.openjpa.persistence.QueryImpl.getSingleResult(QueryImpl.java:326)
> 	org.apache.wookie.beans.jpa.JPAPersistenceManager.findWidgetInstanceByIdKey(JPAPersistenceManager.java:696)
> 	org.apache.wookie.server.LocalizedResourceFilter.getWidgetFromRequest(LocalizedResourceFilter.java:245)
> 	org.apache.wookie.server.LocalizedResourceFilter.doFilter(LocalizedResourceFilter.java:74)
> 	org.apache.wookie.server.MainFilter.doFilter(MainFilter.java:63)
> nota La traza completa de la causa de este error se encuentra en los archivos de diario de Apache Tomcat/6.0.36.
> Apache Tomcat/6.0.36

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira