So to clarify, we should be doing something like the following:
On server startup it should look in the db for any prepared tx states.
These should be then be loaded into the transaction repository.
We also need to load the state for these, i.e. "replay" the transaction through
the channel.
This should be done by recreating acks/refs for that transaction, and basically just
sending or acking them transactionally against the channel.
This will result in the correct tx callbacks being created on the tx.
Then if the recover() is called from the client on the XAResource, the corresponding ids
should be returned, and an entry should be added in the client resource manager (TXState)
for each prepared tx (if they don't already exist)
That's basically it.
Some of the above could be done lazily (i.e. don't reload prepared states until
recover() is called), but the basic principle is the same.
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3988194#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...