Подозирам, че е свързано сзаключване на процепи иключалки за следващ ключ и разликите в поведението наПОВТОРЯЩО ЧЕТЕНЕ :
Извадките са от MySQL docs:ЗАДАВАНЕ НА TRANSACTION синтаксис
и ЧЕТЕТЕ СЪВЪЗДАВАНО :
Може би OP може да ни каже състоянието на innodb_locks_unsafe_for_binlog system
променлива и ако същото заключване се случи, когато настройката на тази променлива се промени.
Също така, ако същото заключване се случи с непоследователни идентификатори, като 18
и 20
, или 18
и 99