David Lloyd [
http://community.jboss.org/people/dmlloyd] created the discussion
"Re: Remoting Transport Transaction Inflow Design Discussion"
To view the discussion, visit:
http://community.jboss.org/message/621467#621467
--------------------------------------------------------------
Mark Little wrote:
> David Lloyd wrote:
>
> Finally "unacceptable to ship a solution that may require manual transaction
cleanup" - you should know that any two-phase transaction system may require manual
transaction cleanup; that's the nature of two-phase transactions. You'll have to
be more specific about the circumstances in which it is not acceptable to require manual
cleanup. I'm pretty sure that if someone unplugs the ethernet cable of the
transaction coordinator after prepare but before commit, there's going to have to be
some manual cleanup.
So does this answer my question c) too? Are you saying that "any prepared but
incomplete transactions have to be recovered manually" is only a reference to
heuristic outcomes?
Let me frame it in terms of the SPIs we're dealing with.
If a transaction is prepared (XATerminator.prepare()) and then the connection is lost,
then the transaction is "stuck" in the prepared state - we aren't going to
do anything about that at the protocol level. But presumably the transaction coordinator
would be able to automatically recover once the resource was made available again, as the
transaction isn't "busted", it's just not fully completed.
If the same scenario exists but the commit was received and acted upon (but it failed),
then I guess this is what you refer to as a heuristic outcome, and, well we're not
going to deal with that either; presumably our recovery tooling will work exactly the same
way in this case as it does in the case where the same thing happens to your database
connection.
--------------------------------------------------------------
Reply to this message by going to Community
[
http://community.jboss.org/message/621467#621467]
Start a new discussion in JBoss Transactions Development at Community
[
http://community.jboss.org/choose-container!input.jspa?contentType=1&...]