Saya mencoba menulis kode basis data untuk memastikan bahwa itu tidak tunduk pada kondisi balapan, untuk memastikan bahwa saya telah mengunci baris atau tabel yang benar. Tetapi saya sering bertanya-tanya: Apakah kode saya benar? Apakah mungkin untuk memaksakan kondisi balapan yang ada terwujud? Saya ingin memastikan bahwa jika hal itu terjadi di lingkungan produksi, aplikasi saya akan melakukan hal yang benar.
Saya biasanya tahu persis query bersamaan yang mana yang mungkin menyebabkan masalah, tetapi saya tidak tahu bagaimana memaksa mereka untuk menjalankan secara bersamaan untuk melihat apakah perilaku yang benar terjadi (misalnya saya menggunakan jenis kunci yang benar), bahwa kesalahan yang tepat adalah dibuang, dll.
Catatan: Saya menggunakan PostgreSQL dan Perl, jadi jika ini tidak dapat dijawab secara umum, mungkin harus dipaget ulang.
Pembaruan: Saya lebih suka jika solusinya terprogram. Dengan begitu saya bisa menulis tes otomatis untuk memastikan tidak ada regresi.