Transactions

Short Transactions

A standard relational database provides short transactions, in which changes are either applied to the database to keep them safe or rolled back and lost.

With short transactions, there is no way to keep changes to the data safe and committed without having those changes seen by everyone who is accessing the data. This means that updates which involve a sequence of short transactions will leave the data in a half-updated state until all the changes have been applied. It also means that other tools cannot see the changes (for example, to validate them) until they have been committed, meaning that the master data may temporarily be in an invalid state.

Long Transactions

A long transaction allows data changes to be made and committed safely to the database (using short transactions) without requiring those changes to be applied to the master version of the data until it has been checked and validated. When required, the changes can be merged into the master version. These long transactions are called versions (see Versions).