Quote Originariamente inviata da brancomat Visualizza il messaggio
1) perchè IS_FREE_LOCK dovrebbe introdurre un bug?
Nel senso che, se il lock è già preso, invece di aspettare un timeout ti fermi, e non è quello che vuoi


Quote Originariamente inviata da brancomat Visualizza il messaggio
2) Il suggerimento sulle transazioni è buono, ma quello che non so è se esiste un modo per farla andare in timeout piuttosto rapidamente.
Sono così complessi questi contatori? Sei sicuro che non ci sia qualcosa che non va? Comunque innodb_lock_wait_timeout è il numero di secondi che aspetti perché una connessione liberi un lock. Il default è 50. Io consiglio di impostarlo a un numero relativamente basso, come 5 o al massimo 10, e alzarlo a livello di sessione solo quando ha un senso.

Mi hai incuriosito con la storia dei contatori, se hai altri problemi raccontaci un po' meglio la situazione