Zu verhindernde Anomalie bestimmen
Klären Sie, ob Dirty Reads, nicht wiederholbare Lesevorgänge oder inkonsistente Bereiche während paralleler Schreibvorgänge vermieden werden müssen. Stärkere Garantien können Sperren oder Versionsverfolgung erfordern und Durchsatz sowie Wiederholungen beeinflussen.
Prüfen Sie, ob die Engine Sperren, MVCC oder eigene Regeln verwendet. Snapshot-Verhalten kann je nach Datenbank und Constraints weiterhin Write Skew zulassen.
Reales Transaktionsmuster testen
Nutzen Sie parallele Sitzungen mit der Lese- und Schreibreihenfolge der Anwendung. Prüfen Sie Ergebnisse unter konfigurierter Isolation einschließlich Deadlocks, Serialisierungsfehlern und Wiederholung.
Wählen Sie die schwächste Stufe, die die Geschäftsregel schützt, und sichern Sie kritische Invarianten bei Bedarf mit Constraints oder expliziten Sperren. Dokumentieren Sie Annahmen für spätere Änderungen.