TMF Operations and Recovery Guide (G06.24+)

Routine Maintenance
HP NonStop TMF Operations and Recovery Guide522417-002
2-22
What Happens When a Communication Link Goes
Down
Group TRANSACTION PROCESSING Publications, available from X/Open
Publications at the following Web location:
http://www.opengroup.org/pubs/catalog/tp.htm
These publications can also be ordered through many bookstores.
What Happens When a Communication Link Goes Down
For homogeneous distributed transactions, as long as the communications links
between network nodes remain available, TMF ensures that the transactions either
commit at all involved nodes or abort at all of them; as a result, the distributed portions
of a database remain consistent with one another. For heterogeneous distributed
transactions, as long as the links between transaction-management subsystems
remain available, TMF and foreign transaction managers cooperate to ensure this
same kind of consistency.
Homogeneous Transactions
When a communications link goes down, homogeneous distributed transactions in the
active state are automatically aborted both in the parent and in all child nodes.
Homogeneous distributed transactions in the committed or prepared state, however,
cannot change states until the link is restored and the involved TMPs are once again
communicating with one another.
Within a parent node, homogeneous distributed transactions in the committed state
cause no problem because TMF can be restarted. Within a child node, if
homogeneous distributed transactions exist in the prepared state, then TMF cannot be
restarted for transaction processing until the in-doubt transactions are completed. If
the link remains down for an extended time, this could be a problem.
Heterogeneous Transactions
When a communications link goes down, heterogeneous transactions in the active
state are aborted at both the parent and child nodes. Heterogeneous transactions in
the committed or prepared state, however, persist until the link is restored and the
involved transaction managers resolve those transactions.
Within a parent node, heterogeneous distributed transactions in the committed state
cause no problem. For example, suppose that a transaction begun by TMF exports a
transaction branch. If the transaction state at the parent (TMF) node is committed
when the link goes down, TMF can be restarted even if this transaction persists (so
that it can inform its children of the transaction’s outcome). But if TMF imports a
transaction branch and this branch is in the prepared state when the link goes down,
TMF cannot be fully restarted unless the transaction branch is resolved by its parent.