A phenomenon is something a database does that someone, somewhere, thought was a bad idea. Whether a phenomenon is legal or not depends on the system’s consistency model. For example, G1a (Aborted Read) is legal under Read Uncommitted, but illegal under Read Committed.
Adya
These phenomena, based on Adya’s 1999 thesis, characterize consistency models (mostly) in terms of dependencies between transactions.
Phenomenon | A.K.A. |
---|---|
G0 | Write Cycle |
G1a | Aborted Read |
G1b | Intermediate Read |
G1c | Cyclic Information Flow |
G-single | Single Anti-dependency Cycle |
G-nonadjacent | Non-adjacent Anti-dependency Cycle |
G2-item | Item Anti-dependency Cycle |
G2 | Anti-dependency Cycle |
Temporal
These anomalies involve the temporal order of events, either on a single process or across multiple processes.
Phenomenon | A.K.A. |
---|---|
Stale Read | |
Real-Time |