Jump to content

Two-phase commit

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Kaare (talk | contribs) at 12:01, 14 December 2004 (da:). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

In computer science, especially in durability studies, a two phase commit allows data to be written to more than one location and for all operations to be rolled back, if one or more of the operations fails.

In essence:

  • Phase 1
Each participants resource manager coordinates local operations
If successful
respond "OK"
If unsuccessful
either allow a time-out or respond "NOT OK"
  • Phase 2
If all participants respond "OK":
Coordinator instructs participating resource managers to "COMMIT"
Participants complete operation
Otherwise:
Coordinator instructs participating resource managers to "ROLLBACK"
Participants complete their respective local undos