Først og fremmest antages det, at id er en primær nøgle eller i det mindste indekseret kolonne.
Insert bør ikke låse tabellen, så der er sandsynlighed for, at en anden opdatering/slet-forespørgsel udføres samtidig med sletningen af posterne.
Hvis det ikke er tilfældet så kan det skyldes "gap locking" som nævnt @a_hest_with_no_name.
Så på hvilket tidspunkt du får dette problem igen, så skal du gemme alle processer "vis fuld procesliste" i din ende og også tjekke "vis motor-innodb-status", hvor det vil vise dig processider relateret til dødvande, dette vil hjælpe dig med at få præcis problem.
Yderligere Du kan undgå denne låsning for at slette alle rækker én efter én baseret på primærnøgle.