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

Come impedire a un deadlock su un nodo di arrestare in modo anomalo l'intero cluster?

Sto rispondendo alla mia stessa domanda perché sono riuscito a evitare arresti anomali. Tuttavia, ho ancora problemi con errori secondari e ho avviato un nuovo thread con le specifiche.

Il mio codice di ripristino ora gestisce gli errori secondari in modo diverso. Riproverà i deadlock un paio di volte, ma solo mentre l'errore è un deadlock. Se si verifica qualsiasi altro tipo di errore, l'applicazione si arrende.

Sebbene ciò significhi che utenti delusi ricevono errori, non ho avuto un arresto anomalo del cluster da questa modifica e non ho visto il temuto errore "server andato via".