摘要 |
The present invention relates to a method of performing a transaction that affects several nodes within a system of nodes in which information belonging to a distributed data-base is stored. The transaction originates from a transaction coordinator (1) and affects at least one group of nodes which comprises a first node (n1), a second node (n2) separate from the first node (n1) and possible intermediate nodes (n3) which comprise further nodes that are separated from one another and from the first and the second node. The transaction is opened with a first phase in which the transaction coordinator sends a "prepare "-message (a) to the first node (n1), the first node then sends a request (b) for preparation or an "unprepared"-message to the second node (n2) either directly or via one or more intermediate nodes (n3), whereafter the second node sends a "prepared"-message or an "unprepared"-message (c) directly to the transaction coordinator (1), which concludes the first phase. In a second phase, the transaction coordinator (1) sends to the second node (n2) a message (d) regarding measures to be taken and the second node then sends the message (e) regarding measures to be taken to the first node (n1), either directly or via one or more intermediate nodes. The first node then sends a concluding message (f) to the transaction coordinator (1), which concludes the second phase. The message (d) regarding measures to be taken is either a "commit"-message or an "abort"-message and the concluding message (f) is either a "committed"-message or an "aborted"-message, depending on whether the first phase was concluded with "prepared" or "unprepared".
|