The Serial Safety Net: Efficient Concurrency Control on Modern Hardware
4 days ago
- #Modern Hardware
- #Serializability
- #Database Concurrency
- Proposes Serial Safety Net (SSN) for achieving serializability without performance degradation on modern hardware.
- SSN layers on top of weak schemes like Read Committed (RC) or Snapshot Isolation (SI) to eliminate dependency cycles.
- Uses low ($\pi(T)$) and high ($\eta(T)$) watermarks to detect and abort transactions forming cycles.
- SSN ensures safe retry by aborting transactions only when conflicts are in the past, unlike OCC which may retry into the same conflict.
- Requires extra timestamps on every tuple version, adding metadata overhead.
- Does not natively handle phantoms; requires additional mechanisms like index versioning or key-range locking.
- RC+SSN vs. SI+SSN: SI provides consistent snapshots mid-transaction, preventing application crashes from transient states, unlike RC.
- SSN is not a standalone solution; needs complementary mechanisms for full serializability.