Mysql
 sql >> Database >  >> RDS >> Mysql

Tieni traccia degli errori MySQL non deterministici in Perl

Supponendo che il tuo database funzioni con le impostazioni predefinite, sono più sorpreso che il tuo SELECT sempre restituisce due valori diversi.

La documentazione dice questo

Quindi, se il valore predefinito REPEATABLE READ livello di isolamento è attivo, mi aspetto che tutte le query restituiscano dati coerenti con lo stato del database al momento della prima query.

Tuttavia, sembra che questo possa aiutare

Penso che dovresti provare

$O_dbh->do('SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED');

subito dopo la connessione e verifica se questo risolve le cose per te.

Tuttavia, dovresti assicurarti di disconnect l'handle del database dopo questa transazione o riportarlo al livello di isolamento precedente. Altrimenti inizierai a ottenere risultati incoerenti.