Могут ли последовательные чтения вызвать ошибку превышения времени ожидания блокировки? - PullRequest
0 голосов
/ 13 марта 2020

У меня есть PHP функция, которая выполняет несколько SQL запросов, серию SELECTs / INSERT.

SELECT, считываемые из стандартных таблиц (InnoDB), а INSERT выполняются во временных таблицах (память) , Ни одна из них не выполняется внутри транзакции (я бы не смог этого сделать, даже если бы хотел, чтобы MySQL 5.7 не поддерживал использование временных таблиц в транзакциях, когда включены GTID).

Некоторое время эти запросы вернули ошибку «Превышен тайм-аут блокировки», которую я не могу понять, поскольку нет транзакций и все операции SELECT являются согласованными чтениями? Я не могу себе представить, что INSERT также является проблемой, поскольку все временные таблицы ограничены этим потоком / соединением и используются только один раз.

Очевидно, что я упускаю что-то очевидное?

...