Из script я отправил такой запрос тысячу раз в мою локальную базу данных:
update some_table set some_column = some_value
Я забыл добавить туда часть, поэтому в том же столбце было установлено одинаковое значение для всех строк в таблице, и это было сделано тысячи раз, а столбец был проиндексирован, поэтому соответствующий индекс, вероятно, также был обновлен много раз.
Я заметил, что что-то не так, потому что это заняло слишком много времени, поэтому я убил script. Я даже перезагрузил свой компьютер с тех пор, но что-то застряло в таблице, потому что простые запросы занимают очень много времени, и когда я пытаюсь удалить соответствующий индекс, он не работает с этим сообщением:
Lock wait timeout exceeded; try restarting transaction
Это таблица innodb, поэтому застрявшая транзакция, вероятно, неявная. Как я могу исправить эту таблицу и удалить из нее застрявшую транзакцию?