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

Il nuovo EntityManager a volte ottiene dati obsoleti da MySQL

Per qualche motivo ho pensato che la transazione implicita a cui si unisce entityManager fosse una nuova transazione. Ma Iberna i documenti stato:"Quando crei un gestore entità all'interno di una transazione, il gestore entità si unisce automaticamente alla transazione corrente".

Quindi apparentemente c'è già un'altra transazione in esecuzione (non sorprendente) e i miei risultati di recupero cambiano a seconda di ciò che aveva già letto (perché il database è in esecuzione in modalità REPEATABLE-READ.)

A breve termine analizzerò il mio codice per iniziare esplicitamente () le transazioni ovunque manchino. A lungo termine, esaminerò le Transazioni primaverili per vedere come gestire le transazioni in modo più infallibile (come suggerito nei commenti).