Sospetto che abbia a che fare con gap lock e serrature del tasto successivo e le differenze nel comportamento di LETTURA RIPETIBILE :
Gli estratti provengono da documenti MySQL:Sintassi SET TRANSACTION
e LEGGERE IMPEGNO :
Forse OP può dirci lo stato di innodb_locks_unsafe_for_binlog system
variabile e se si verifica lo stesso blocco quando viene modificata l'impostazione di questa variabile.
Inoltre, se si verifica lo stesso blocco con ID non sequenziali, come 18
e 20
o 18
e 99