Blogging Roller

Dave Johnson on open web technologies, social software and software development

HEADS UP: MySQL Connector/J v3.0.7 infinite loop problem

It took me a while to figure this out so... heads up! If you are using the MySQL Connector/J v3.0.7 JDBC driver then watch out for the infinite loop problem. This is a "known issue that happens when connections and statements are closed in particular circumstances." A fix will be included in the Connector/J v3.0.8 release.

In my case, this appeared as an intermittent problem with the Roller login. This problem appeared the other day on my site, causing Roller logins to fail, so I switched to one of the MySQL Connector/J v3.0.X nightlies and it seems to have solved the problem.

2003-05-25 03:08:27 HttpProcessor[10030][3] Starting background thread
2003-05-25 10:08:26 HttpProcessor[10030][2] process.invoke
java.lang.StackOverflowError
        at java.lang.Exception.<init>(Exception.java:41)
        at java.io.IOException.<init>(IOException.java:40)
        at java.net.SocketException.<init>(SocketException.java:29)
        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:69)
        at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:127)
        at com.mysql.jdbc.MysqlIO.send(MysqlIO.java:1478)
        at com.mysql.jdbc.MysqlIO.send(MysqlIO.java:1405)
        at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:879)
        at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:945)
        at com.mysql.jdbc.MysqlIO.sqlQuery(MysqlIO.java:917)
        at com.mysql.jdbc.Connection.execSQL(Connection.java:1841)
        at com.mysql.jdbc.Connection.execSQL(Connection.java:1787)
        at com.mysql.jdbc.Connection.execSQL(Connection.java:1768)
        at com.mysql.jdbc.Connection.rollbackNoChecks(Connection.java:1369)
        at com.mysql.jdbc.Connection.rollback(Connection.java:1356)
        at com.mysql.jdbc.Connection.close(Connection.java:1028)
        at com.mysql.jdbc.Connection.cleanup(Connection.java:2050)
        at com.mysql.jdbc.Connection.execSQL(Connection.java:1853)
        at com.mysql.jdbc.Connection.execSQL(Connection.java:1787)
        at com.mysql.jdbc.Connection.execSQL(Connection.java:1768)
        at com.mysql.jdbc.Connection.rollbackNoChecks(Connection.java:1369)
        ...
Dave Johnson in Java • 🕒 12:02PM May 25, 2003
Tags: Java
Comments:

I don't know if it's a similar cause but my Roller installation with Connector/J v3.0.7 suffered similar symptoms. After running fine for a few days Roller would suddenly fail to login, though the error log showed a number of connection errors none were of the Stack Overflow type. Replacing Connector/J with the latest nightly also resolved this problem.

Posted by Jason Rimmer on May 27, 2003 at 10:49 PM EDT #

Post a Comment:
  • HTML Syntax: NOT allowed