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
