Robert Hodges (JIRA)
2009-06-24 00:28:47 UTC
Connector generates failures due to trying to rollback autocommit transaction
-----------------------------------------------------------------------------
Key: MYO-94
URL: https://forge.continuent.org/jira/browse/MYO-94
Project: Tungsten Connector
Type: Bug
Versions: 0.6.7
Environment: MySQL 5.0.x (percona build)
Reporter: Robert Hodges
Assigned to: Gilles Rayrat
Fix For: 0.7
The connector under some circumstances generates exceptions due to trying to roll back auto-commit transactions. It seems we don't check the connection state during error handling. The error in this case seems to be associated with connection termination.
Here is the stack trace:
INFO | jvm 2 | 2009/06/23 20:10:43 | ERROR [MySQLProtocolHandler] - Error doing rollback transaction
INFO | jvm 2 | 2009/06/23 20:10:43 | com.mysql.jdbc.exceptions.MySQLNonTransientConnectionException: Can't call rollback when autocommit=true
INFO | jvm 2 | 2009/06/23 20:10:43 | at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:888)
INFO | jvm 2 | 2009/06/23 20:10:43 | at com.mysql.jdbc.Connection.rollback(Connection.java:5257)
INFO | jvm 2 | 2009/06/23 20:10:43 | at com.continuent.tungsten.router.jdbc.TSRConnection.rollback(TSRConnection.java:340)
INFO | jvm 2 | 2009/06/23 20:10:43 | at org.continuent.myosotis.protocol.mysql.MySQLProtocolHandler.preprocessQuery(MySQLProtocolHandler.java:873)
INFO | jvm 2 | 2009/06/23 20:10:43 | at org.continuent.myosotis.protocol.mysql.MySQLProtocolHandler.processQuery(MySQLProtocolHandler.java:514)
INFO | jvm 2 | 2009/06/23 20:10:43 | at org.continuent.myosotis.protocol.mysql.MySQLProtocolHandler.processCommand(MySQLProtocolHandler.java:266)
INFO | jvm 2 | 2009/06/23 20:10:43 | at org.continuent.myosotis.protocol.mysql.MySQLProtocolHandler.processClientPacket(MySQLProtocolHandler.java:222)
INFO | jvm 2 | 2009/06/23 20:10:43 | at org.continuent.myosotis.protocol.mysql.MySQLConnectionHandler.run(MySQLConnectionHandler.java:104)
INFO | jvm 2 | 2009/06/23 20:10:43 | at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
INFO | jvm 2 | 2009/06/23 20:10:43 | at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
INFO | jvm 2 | 2009/06/23 20:10:43 | at java.lang.Thread.run(Unknown Source)
INFO | jvm 2 | 2009/06/23 20:10:43 | ERROR [MySQLConnectionHandler] - Reading from socket.
INFO | jvm 2 | 2009/06/23 20:10:43 | java.io.EOFException
INFO | jvm 2 | 2009/06/23 20:10:43 | at java.io.DataInputStream.readByte(Unknown Source)
INFO | jvm 2 | 2009/06/23 20:10:43 | at org.continuent.myosotis.protocol.mysql.MySQLConnectionHandler.readPacket(MySQLConnectionHandler.java:148)
INFO | jvm 2 | 2009/06/23 20:10:43 | at org.continuent.myosotis.protocol.mysql.MySQLConnectionHandler.run(MySQLConnectionHandler.java:103)
INFO | jvm 2 | 2009/06/23 20:10:43 | at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
INFO | jvm 2 | 2009/06/23 20:10:43 | at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
INFO | jvm 2 | 2009/06/23 20:10:43 | at java.lang.Thread.run(Unknown Source)
-----------------------------------------------------------------------------
Key: MYO-94
URL: https://forge.continuent.org/jira/browse/MYO-94
Project: Tungsten Connector
Type: Bug
Versions: 0.6.7
Environment: MySQL 5.0.x (percona build)
Reporter: Robert Hodges
Assigned to: Gilles Rayrat
Fix For: 0.7
The connector under some circumstances generates exceptions due to trying to roll back auto-commit transactions. It seems we don't check the connection state during error handling. The error in this case seems to be associated with connection termination.
Here is the stack trace:
INFO | jvm 2 | 2009/06/23 20:10:43 | ERROR [MySQLProtocolHandler] - Error doing rollback transaction
INFO | jvm 2 | 2009/06/23 20:10:43 | com.mysql.jdbc.exceptions.MySQLNonTransientConnectionException: Can't call rollback when autocommit=true
INFO | jvm 2 | 2009/06/23 20:10:43 | at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:888)
INFO | jvm 2 | 2009/06/23 20:10:43 | at com.mysql.jdbc.Connection.rollback(Connection.java:5257)
INFO | jvm 2 | 2009/06/23 20:10:43 | at com.continuent.tungsten.router.jdbc.TSRConnection.rollback(TSRConnection.java:340)
INFO | jvm 2 | 2009/06/23 20:10:43 | at org.continuent.myosotis.protocol.mysql.MySQLProtocolHandler.preprocessQuery(MySQLProtocolHandler.java:873)
INFO | jvm 2 | 2009/06/23 20:10:43 | at org.continuent.myosotis.protocol.mysql.MySQLProtocolHandler.processQuery(MySQLProtocolHandler.java:514)
INFO | jvm 2 | 2009/06/23 20:10:43 | at org.continuent.myosotis.protocol.mysql.MySQLProtocolHandler.processCommand(MySQLProtocolHandler.java:266)
INFO | jvm 2 | 2009/06/23 20:10:43 | at org.continuent.myosotis.protocol.mysql.MySQLProtocolHandler.processClientPacket(MySQLProtocolHandler.java:222)
INFO | jvm 2 | 2009/06/23 20:10:43 | at org.continuent.myosotis.protocol.mysql.MySQLConnectionHandler.run(MySQLConnectionHandler.java:104)
INFO | jvm 2 | 2009/06/23 20:10:43 | at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
INFO | jvm 2 | 2009/06/23 20:10:43 | at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
INFO | jvm 2 | 2009/06/23 20:10:43 | at java.lang.Thread.run(Unknown Source)
INFO | jvm 2 | 2009/06/23 20:10:43 | ERROR [MySQLConnectionHandler] - Reading from socket.
INFO | jvm 2 | 2009/06/23 20:10:43 | java.io.EOFException
INFO | jvm 2 | 2009/06/23 20:10:43 | at java.io.DataInputStream.readByte(Unknown Source)
INFO | jvm 2 | 2009/06/23 20:10:43 | at org.continuent.myosotis.protocol.mysql.MySQLConnectionHandler.readPacket(MySQLConnectionHandler.java:148)
INFO | jvm 2 | 2009/06/23 20:10:43 | at org.continuent.myosotis.protocol.mysql.MySQLConnectionHandler.run(MySQLConnectionHandler.java:103)
INFO | jvm 2 | 2009/06/23 20:10:43 | at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
INFO | jvm 2 | 2009/06/23 20:10:43 | at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
INFO | jvm 2 | 2009/06/23 20:10:43 | at java.lang.Thread.run(Unknown Source)
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://forge.continuent.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://forge.continuent.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira