Prova a eseguire il debug del problema. Questo può essere causato da un numero qualsiasi di cose. Comunemente ci sono:
- Il server MySQL si è bloccato
- Un problema di comunicazione tra client e server
- Abuso della libreria client in un modo non previsto, magari inviando comandi fuori servizio o inviando spazzatura attraverso il socket.
L'ultima volta che l'ho usato il driver PDO era piuttosto debole ed è stato possibile creare l'ultimo caso.
Se è probabile che il problema di comunicazione sia in produzione, l'applicazione dovrebbe riconnettersi e riprovare la transazione.