It is my opinion that we need to add transaction logging and recovery to the JB 
transaction manager.

My understanding of Trasaction Logging and recovery:

The transaction manager would follow the two phase commit protocol (we seem to kinda 
sorta do that but not completely).  The transaction manager should log when an 
XAResource is enrolled, prepared or committed in a transaction.  If the node dies then 
the recovery process picks it up it should read the log, instantiate all of the 
XAResources involved in the transaction, tell them to commit or rollback the 
transaction.  If no prepares were issued, all rolls back.  If some prepares were 
issued but not all, all rolls back.  If all preapres were issued or some commits were 
issued, it should commit.

My understanding of distributed transactions:

Again we must follow the two phase commit protocol.  When a transaction is passed from 
one JBoss node to the next, the transaction managers need to communicate and one 
transaction manager should be slave, the other master.  (For now lets assume no more 
than A talks to B).  This could complicate recovery, but for now we should just always 
rollback.

What am I missing?

I started prototyping this out a while back and ran into a couple relatively minor 
snags.  The first, our transaction manager needs to use hte full XID instead of only 
1/2.  A server ID needs to be based on the clsuter ID in the event of a cluster.  Some 
general refactoring may need to take place to deal with the divide of labor between 
the classes (IIRC things that needed to be logged seemed to be distributed between a 
couple classes).  



View the original post : 
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3847918#3847918

Reply to the post : 
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=3847918


-------------------------------------------------------
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM. 
Deadline: Sept. 13. Go here: http://sf.net/ppc_contest.php
_______________________________________________
JBoss-Development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to