Use Case 24 - MNs and CNs Support TransactionsΒΆ

Revisions

View document revision history.

Goal

Transactions - CNs and MNs should support transaction sets where operations all complete successfully or get rolled back (e.g., upload both data and metadata records).

Summary

Transactions help ensure stability of the system, so that the chance of partial change to content is minimized.

Note that this use case is really stated as a requirement of the DataONE system.

Actors
  • Member Nodes

  • Coordinating Nodes

  • Investigator toolkit

Preconditions
  • DataONE operational

  • Some data / metadata transfer operation is due.

Triggers
  • Metadata transfer is in process and there is a network failure

Post Conditions
  • The transfer changes should be rolled back to the state before the operation.

../../_images/8c740c10904f6fdf66ed787de61d7a1206ec6149231348b8c67e5a309813c3b6.svg

Figure 1. Interactions for use case 24, Transfer Rollback due to Failure. Simple transaction control around a get operation by a CN against and MN.

Notes

  • Does this include just one service, or sets of services that can be included in a transaction?

  • Can transactions span multiple MNs? MNs and CNs?