[jbossts-issues] [JBoss JIRA] (JBTM-2167) JDBC Object Store Deadlock potential with MySQL

Tom Jenkinson (JIRA) issues at jboss.org
Mon Jul 7 03:46:25 EDT 2014


    [ https://issues.jboss.org/browse/JBTM-2167?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12982512#comment-12982512 ] 

Tom Jenkinson commented on JBTM-2167:
-------------------------------------

These are the two inserts that supposedly are causing a deadlock:
INSERT INTO ActionJBossTSTxTable 
(StateType,Hidden,TypeName,UidString,ObjectState) VALUES 
(1,0,'Recovery/FactoryContact','0:ffffac1183232f3:536520f5:0',_binary'#BE 
@\0\0\0\0\0\0E�Z\0\0eIOR:000000000000002B49444C3A61726A756E612E636F6D2F41726A756E614F54532F41726A756E61466163746F72793A312E300000000000010000000000000070000102000000000E3137322E31372E3133312E333500DA5300000015363237373531323530302F00181B03020D2A280A3F000000000000020000000000000008000000004A41430000000001000000200000000005010001000000010001000100010109000000020501000100010100\0\0\0\0'

INSERT INTO ActionJBossTSTxTable 
(StateType,Hidden,TypeName,UidString,ObjectState) VALUES 
(1,0,'Recovery/FactoryContact','0:ffffac118323:c696:536520f5:0',_binary'#BE 
@\0\0\0\0\0\0E�p\0\0eIOR:000000000000002B49444C3A61726A756E612E636F6D2F41726A756E614F54532F41726A756E61466163746F72793A312E300000000000010000000000000070000102000000000E3137322E31372E3133312E333500E37900000016333638303032343135382F00181B03020D2B200147160000000000020000000000000008000000004A41430000000001000000200000000005010001000000010001000100010109000000020501000100010100\0\0\0\0')

>From MySQL docs http://dev.mysql.com/doc/refman/5.0/en/innodb-deadlocks.html: "not dangerous unless they are so frequent that you cannot run certain transactions at all. Normally, you must write your applications so that they are always prepared to re-issue a transaction if it gets rolled back because of a deadlock."

> JDBC Object Store Deadlock potential with MySQL
> -----------------------------------------------
>
>                 Key: JBTM-2167
>                 URL: https://issues.jboss.org/browse/JBTM-2167
>             Project: JBoss Transaction Manager
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>          Components: Testing
>            Reporter: Gytis Trikleris
>            Assignee: Michael Musgrove
>            Priority: Minor
>             Fix For: 5.0.3
>
>
> {code}
> WARN  com.arjuna.ats.arjuna - ARJUNA012258: JDBCImple:write_state caught exception
> 2014-07-06 05:06:00,067 out: com.mysql.jdbc.exceptions.jdbc4.MySQLTransactionRollbackException: Deadlock found when trying to get lock; try restarting transaction
> 2014-07-06 05:06:00,067 out: 	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
> 2014-07-06 05:06:00,067 out: 	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
> 2014-07-06 05:06:00,067 out: 	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
> 2014-07-06 05:06:00,067 out: 	at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
> 2014-07-06 05:06:00,067 out: 	at com.mysql.jdbc.Util.handleNewInstance(Util.java:406)
> 2014-07-06 05:06:00,067 out: 	at com.mysql.jdbc.Util.getInstance(Util.java:381)
> 2014-07-06 05:06:00,067 out: 	at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1045)
> 2014-07-06 05:06:00,067 out: 	at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956)
> 2014-07-06 05:06:00,067 out: 	at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3536)
> 2014-07-06 05:06:00,067 out: 	at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3468)
> 2014-07-06 05:06:00,067 out: 	at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1957)
> 2014-07-06 05:06:00,068 out: 	at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2107)
> 2014-07-06 05:06:00,068 out: 	at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2648)
> 2014-07-06 05:06:00,068 out: 	at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2086)
> 2014-07-06 05:06:00,068 out: 	at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2371)
> 2014-07-06 05:06:00,068 out: 	at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2289)
> 2014-07-06 05:06:00,068 out: 	at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2274)
> 2014-07-06 05:06:00,068 out: 	at com.arjuna.ats.internal.arjuna.objectstore.jdbc.JDBCImple_driver.write_state(JDBCImple_driver.java:587)
> 2014-07-06 05:06:00,068 out: 	at com.arjuna.ats.internal.arjuna.objectstore.jdbc.JDBCStore.write_committed(JDBCStore.java:158)
> 2014-07-06 05:06:00,068 out: 	at com.arjuna.ats.arjuna.coordinator.BasicAction.prepare(BasicAction.java:2282)
> 2014-07-06 05:06:00,068 out: 	at com.arjuna.ats.arjuna.coordinator.BasicAction.End(BasicAction.java:1515)
> 2014-07-06 05:06:00,068 out: 	at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.end(TwoPhaseCoordinator.java:96)
> 2014-07-06 05:06:00,068 out: 	at com.arjuna.ats.arjuna.AtomicAction.commit(AtomicAction.java:162)
> 2014-07-06 05:06:00,068 out: 	at com.arjuna.ats.arjuna.AtomicAction.commit(AtomicAction.java:147)
> 2014-07-06 05:06:00,068 out: 	at org.jboss.jbossts.qa.ArjunaCore.LockManager.client.Worker001.run(Worker001.java:67)
> {code}
> crashrecovery08 CrashRecovery08_Test32 Fail (0m44.850s)
> crashrecovery08 CrashRecovery08_Test04 Fail (0m37.253s)
> txcore_lockrecord LockRecord_Thread_Test048a Fail (0m46.514s)
> txcore_lockrecord LockRecord_Thread_Test022b Fail (0m8.687s)
> txcore_lockrecord LockRecord_Thread_Test010a Fail (0m10.751s)
> txcore_lockrecord LockRecord_Thread_Test047b Fail



--
This message was sent by Atlassian JIRA
(v6.2.6#6264)



More information about the jbossts-issues mailing list