Isolation

The isolation property guarantees that transactions do not contend with each other. Whenever there are parallel transactions working on shared entities, the systems exposes a consistent view of the system for all the transactions.

Let's start the discussion by analyzing the different effects of concurrent transactions:

  • Lost updates: Consider two transactions that update an entity independently. In this case, one transaction will finish after another and the last transaction update will overwrite the previous one. For example, if an online editor modifies two transactions for the same document for two authors, then the last update will overwrite the updates of the original author—even though they might be working on totally different ...

Get Hands-On Software Architecture with Golang now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.