|
Hello, I'm using orbeon with mysql. After a period of a few hours of server inactivity (more than session timeout) when I try to load Orbeon Form runner it crashes starting with the message below. Basically it seems that mysql has already closed the Orbeon connection, and Orbeon still thinks the database connection should be up and tries to use it. How do I fix this issue? How do I set the timeout parameters so Orbeon knows that mysql has already closed the connection and it should start a new one?
Thank you 2012-02-29 08:03:52,051 ERROR SQLProcessor - PreparedStatement: null 2012-02-29 08:03:52,052 ERROR ProcessorService - Exception at oxf:/apps/fr/persistence/mysql/crud.xpl (executing XSLT transformation) java.io.EOFException: Can not read response from server. Expected to read 4 bytes, read 0 bytes before connection was unexpectedly lost. at com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:2552) at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:3002) at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:2991) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3532) at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2002) at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2163) at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2618) at com.mysql.jdbc.ConnectionImpl.setAutoCommit(ConnectionImpl.java:5000) at org.apache.commons.dbcp.DelegatingConnection.setAutoCommit(DelegatingConnection.java:371) at org.apache.commons.dbcp.DelegatingConnection.setAutoCommit(DelegatingConnection.java:371) at org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.setAutoCommit(PoolingDataSource.java:328) at org.orbeon.oxf.processor.DatabaseContext.setConnectionProperties(DatabaseContext.java:124) at org.orbeon.oxf.processor.DatabaseContext.getConnection(DatabaseContext.java:62) at org.orbeon.oxf.processor.sql.SQLProcessorInterpreterContext.getConnection(SQLProcessorInterpreterContext.java:334) at org.orbeon.oxf.processor.sql.interpreters.QueryInterpreter.end(QueryInterpreter.java:173) |
|
I modified the mysql server wait_timeout to 10 seconds (default is 8 hours) which means the mysql server will drop idle database connections after 10 seconds. This makes Orbeon continually crash (lost db connection) if there's no database queries in form runner for 10 seconds, ie. it assumes the database connection is still available when a new query happens. So basically, Orbeon never closes its database connection. Can any of the developers suggest a fix for this?
Thanks |
| Free forum by Nabble | Edit this page |
