abbiamo visto un sacco di errori di recente:rilascio di MySQL blocco delle transazioni al di fuori (rotaie)
ActiveRecord::TransactionIsolationConflict: Transaction isolation conflict detected: Lock wait timeout exceeded; try restarting transaction
non è in grado di capire il ragionamento dietro di esso. Ma ho notato una cosa in nostro codice, che sta cercando di bloccare un record al di fuori di transazione:
acc = Account.lock.find acc_id
Sopra il codice non è all'interno di qualsiasi transazione ed è usato solo per controllare che l'altra transazione che ottiene anche lo stesso blocco è finito o non. Qualche idea su se questo può essere il colpevole?