Skip to main content

JTS automatic retry transaction on connection failure

No replies
umbra
Offline
Joined: 2004-08-16
Points: 0

Hello,
Every once in a while, some connectivity issues occur when one instance of MySQL server is removed from the load balancer (ETL requirements, to make the apps see the updated data) and we see some a lot of stacktraces in the logs that end up with a javax.transaction.SystemException: org.omg.CORBA.INTERNAL: JTS5031: Exception [org.omg.CORBA.INTERNAL: vmcid: 0x0 minor code: 0 completed: Maybe] on Resource [rollback] operation. vmcid: 0x0 minor code: 0 completed: No

The MySQL documentation indicates this:
"The two SQL states that are 'retry-able' are 08S01 for a communications error, and 40001 for deadlock."

What I would like to know if it's there a way to make GlassFish automatically retry the current transaction, using a new connection from the pool. I wouldn't want to have to modify all the current code to do that...

I think I found something regarding WebLogic, but now I can't find that reference anymore...