[Info-ingres] What does XA_END mean in the SC930 log?

Roy Hann specially at processed.almost.meat
Thu Jan 4 15:43:23 UTC 2018


Gordon Thorpe wrote:

> Given the XID in the messages, the sequence looks correct to me.

And given what you and Karl have explained about XA I no longer question
it, so thank you for putting my mind at ease on that point.

> Note that END does not physically end the transaction (commit/rollback),
> but suspends the work being done on the transaction.

I'm going to have to do a lot of reading. I can think of reasons to 
signal that work is stopping (as opposed to work is finished) but I
don't like them.   >:-(

> XA is a strange duck and mapping it onto a more conventional transaction
> system can result in peculiar  behavior.  For example, in XA you can
> START a transaction, perform work in the transaction, END work on the
> transaction, START a different transaction and perform work, etc.  You can
> even re-connect to the first transaction (which is in a suspended state)
> and do more work on it, or connect to a transaction that was started by
> some other session, all controlled by the XID.  At some point you can
> go back and PREPARE/COMMIT/ROLLBACK the various transactions.  So in
> the DBMS, an END may remove the association between the session and the
> XA transaction, but the transaction still exists in a suspended state
> (I would guess).  The XID allows a session, or a transaction manager
> for that matter, to then control the resolution of the transaction.

This seems a killer argument for unambiguously marking, using an EQY,
where a transaction actually ends (i.e. COMMITs or ROLLBACKs). 

Is there any hope that could be done? I mean, is there any way the
information could be communicated from DMF (or whichever facility
_really_ knows what's going on)?

Roy




More information about the Info-ingres mailing list