Dengan asumsi database Anda berjalan dengan pengaturan default, saya lebih terkejut bahwa SELECT
. Anda pernah mengembalikan dua nilai yang berbeda.
Dokumentasi mengatakan ini
Jadi, jika default REPEATABLE READ
tingkat isolasi berlaku, saya berharap semua kueri akan mengembalikan data yang konsisten dengan status database pada saat kueri pertama.
Namun, sepertinya ini bisa membantu
Saya pikir Anda harus mencoba
$O_dbh->do('SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED');
segera setelah terhubung, dan lihat apakah itu memperbaiki segalanya untuk Anda.
Namun, Anda harus memastikan untuk disconnect
database menangani setelah transaksi ini atau mengembalikannya ke tingkat isolasi sebelumnya. Jika tidak, Anda akan mulai mendapatkan hasil yang tidak konsisten.