When an aborted transaction is restarted, the LogTM implementation checks
against the remote transaction that caused the abort. Only when the
conflicting transaction is done, the newly restarted transaction would stall
until the conflicting one completed (committed or aborted).
This check is done by comparing the timestamp of the conflicting *xact
manager* with that of the conflicting response (that NACK response).
Now, the problem comes up: how can a xact manager query a remote xact
manager without any latency in a real world? That would be oracle, or
nonsense.
G.R.
|