Atomikos Forum

Atomikos transactions recovery

Hi,

I have got some questions about transaction recovery with Atomikos Transaction Essentials.

1) I read Transaction Essentaials guide which states that "startup and recovery of the transaction service will happen automatically as soon as you start
using the UserTransaction". Does this mean that the framework will try to recover from failure last failure(s) on any new transaction? (or on framework "start" / application reboot)

2) Image we have 2 database(s) XA data sources which have to be atomic. We commit the user transaction which internally prepares and commits each resource.

Lets look at Mysql:
http://dev.mysql.com/doc/refman/5.0/en/xa-restrictions.html

It says that prepared (in doubt) transactions will be rolled back when the connection is lost. Image a scenario when internally both prepares succeed but only one individual commit succeeds (connection lost in between edge case). Is there any support from Atomikos to recover from the situation like this? This can also happen in Oracle database. Documentation says that in-doubt transactions can be rolled back automatically when locks are required.

Thanks for help.
Marcin Send private email
Monday, October 10, 2011
 
 
As per XA, we try to recover prepared transactions from the database as long as the database supports XA.

If prepared transactions magically disappear from the database then this can be expected to cause 'heuristic' exceptions during recovery. That is the best we can do because by definition XA requires support from the database...

HTH
Guy Pardon Send private email
Monday, October 17, 2011
 
 
Could you answer the first question? When exactly the lost transactions are recovered?
Marcin Send private email
Monday, October 17, 2011
 
 
Recovery starts at startup of the core, and proceeds per-resource as soon as the JDBC or JMS connectors are init-ed.

HTH
Guy Pardon Send private email
Saturday, October 29, 2011
 
 

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics