MySQL problems

2 views
Skip to first unread message

DarkIT

unread,
Oct 31, 2007, 8:01:28 AM10/31/07
to rife-users
Hi,

I saw the same behavior in 1.5.x branch and in current 1.6.1
Rife loses jdbc connection after some working time rife and then about
night without any connection to mysql.
This stacktrace (Under jdk 1.6 and tomcat 5.5.17) :

com.mysql.jdbc.CommunicationsException

Communications link failure due to underlying exception: ** BEGIN
NESTED EXCEPTION ** java.io.EOFException STACKTRACE:
java.io.EOFException at com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:
1963) at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:2375)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2874) at
com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1623) at
com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1715) at
com.mysql.jdbc.Connection.execSQL(Connection.java:3243) at
com.mysql.jdbc.Connection.setAutoCommit(Connection.java:5371) at
com.uwyn.rife.database.DbConnection.beginTransaction(DbConnection.java:
887) at
com.uwyn.rife.database.DbQueryManager.inTransaction(DbQueryManager.java:
2781) at
com.uwyn.rife.crud.elements.admin.Browse.processElement(Browse.java:
55) at
com.uwyn.rife.engine.ElementContext.processContext(ElementContext.java:
460) at com.uwyn.rife.engine.RequestState.service(RequestState.java:
368) at com.uwyn.rife.engine.Gate.handleRequest(Gate.java:187) 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
com.uwyn.rife.servlet.RifeFilter.doFilter(RifeFilter.java:162) at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:
215) at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:
188) at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:
213) at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:
174) at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:
127) at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:
117) at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:
108) at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:
151) at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:
874) at org.apache.coyote.http11.Http11BaseProtocol
$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:
665) at
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:
528) at
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:
81) at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadPool.java:689) at
java.lang.Thread.run(Thread.java:619) ** END NESTED EXCEPTION ** Last
packet sent to the server was 1 ms ago.

DarkIT

unread,
Oct 31, 2007, 8:06:40 AM10/31/07
to rife-users
Also there're another web application( spring + hibernate) in this
tomcar which is working with the same database and using the same
version of mysql driver - and there're no any problems with it.

Mork0075

unread,
Oct 31, 2007, 8:38:38 AM10/31/07
to rife-...@googlegroups.com
I'am not 100% sure, but it think we discovered the same problem in one
of our projects to (independent from rife, another framework). The
problem is produced by mysql itself, which has a wait_timeout variable,
which forces the server to close the connection after a certain period.
The default value is 8h.

So you can adjust this time in your my.ini or this problem is handeld by
the framework. Our framework creates a dummy query every x minutes, this
forces the connection to be active.

Perhaps this helps

DarkIT schrieb:

Geert Bevin

unread,
Oct 31, 2007, 9:07:06 AM10/31/07
to rife-...@googlegroups.com
This is indeed a well known problem in MySQL.

To force the connection to stay alive, you can use the
DbProbeExecutor with RIFE's scheduler:
http://rifers.org/docs/api/com/uwyn/rife/database/DbProbeExecutor.html

HTH,

Geert

--
Geert Bevin
Terracotta - http://www.terracotta.org
Uwyn "Use what you need" - http://uwyn.com
RIFE Java application framework - http://rifers.org
Music and words - http://gbevin.com

DarkIT

unread,
Nov 2, 2007, 10:54:45 AM11/2/07
to rife-users
Thank's a lot.

Reply all
Reply to author
Forward
0 new messages