A serial trace removes the interleaving that creates value anomalies.

highlighted = computed this step

A serial run has no anomaly

A serial run groups one transaction before the next. The same kind of read and write work can produce no anomaly when it is not interleaved. Note: the trace still recomputes reads and final state.

serial run\text{serial run}

Serial trace

The serial trace has 2 reads and 1 final-state item. Note: the rendered anomaly label is recomputed.

reads=2,final items=1\text{reads}=2,\quad \text{final items}=1

these traces model specific anomalies under a read-latest-write execution model; isolation levels (RC/RR/SI/serializable) and MVCC mechanism are modelled later - no product claims.

Serial run T1 T2 0 R(X)=100 1 W(X,110) 2 R(X)=110 3 W(X,120) anomaly: no_anomaly final: X=120 serial: X=120

Summary

Serial order removes the interleaving that created the earlier anomalies. Note: isolation levels, serializable behavior, and MVCC mechanisms are deferred to later books.

serial contrast\text{serial contrast}