🤖 AI Summary
Existing MVCC serializability protocols (e.g., SSN) rely on a single serialization point—typically commit time—and thus fail to accommodate read-write anti-dependencies inherent in Snapshot Isolation (SI), leading to excessive transaction aborts.
Method: We propose a relaxed commit-time validation mechanism that, for the first time, incorporates total transaction ordering into multiversion serializability checking. Our approach jointly leverages the Direct Serialization Graph (DSG) and Multiversion Serialization Graph (MVSG) criteria under invariant semantics, enabling a single lightweight check. It preserves version-chain monotonicity, eliminating costly chain traversal while maintaining storage overhead comparable to SSN.
Contribution/Results: Our method strictly subsumes SSN’s correctness guarantees and supports snapshot reads ordered by either start or commit time. Experiments on reproducible mixed workloads show an absolute reduction of 0.25 and a relative decrease of ~50% in long-transaction abort rates, significantly improving concurrency performance.
📝 Abstract
A long line of concurrency-control (CC) protocols argues correctness via a single serialization point (begin or commit), an assumption that is incompatible with snapshot isolation (SI), where read-write anti-dependencies arise. Serial Safety Net (SSN) offers a lightweight commit-time test but is conservative and effectively anchored on commit time as the sole point. We present ESSN, a principled generalization of SSN that relaxes the exclusion condition to allow more transactions to commit safely, and we prove that this preserves multiversion serializability (MVSR) and that it strictly subsumes SSN. ESSN states an MVSG (Multiversion Serialization Graph)-based criterion and introduces a known total order over transactions (KTO; e.g., begin-ordered or commit-ordered) for reasoning about the graph's serializability. With a single commit-time check under invariant-based semantics, ESSN's exclusion condition preserves monotonicity along per-item version chains, and eliminates chain traversal. The protocol is Direct Serialization Graph (DSG)-based with commit-time work linear in the number of reads and writes, matching SSN's per-version footprint. We also make mixed workloads explicit by defining a Long transaction via strict interval containment of Short transactions, and we evaluate ESSN on reproducible workloads. Under a commit-ordered KTO, using begin-snapshot reads reduces the long-transaction abort rate by up to approximately 0.25 absolute (about 50% relative) compared with SSN.