Недостающие строки после вставки

У меня есть приложение php, которое вставляет строки в таблицу A, очень простой запрос.
Работает каждые 10-15 минут.
До прошлой недели с ним не было никаких проблем, но после сбоя диска я перенес db на другой сервер, и эта проблема начала возникать.

Нет ошибок возврата, ничего в журналах, но мои вставки отсутствуют.

Есть цикл, который вставляет новую строку для каждого цикла.

После каждой вставки я проверяю наличие mysqli_insert_id и записываю его в файл.
Затем я запускаю запрос SELECT, чтобы проверить, действительно ли это основное поле находится в таблице, да, это так.
количество затронутых рядов равно 1.
Но когда я запускаю запрос SELECT из другого соединения mysql, до того, как PHP прекратит выполнение (так что соединение все еще работает), ничего не появляется.

Это похоже на автоматический откат, но я не нашел взаимоблокировок, использовал pt-deadlock-logger;
http://www.percona.com/doc/percona-toolkit/2.1/pt-deadlock-logger.html

Я не знаю, есть ли что-нибудь еще, что вызывает автоматический откат.

Кстати, я также обнаружил, что в этом цикле PHP есть другие INSERT-запросы, и они тоже не вставлены.

MySQL: 5.6.21
Двигатель: InnoDB

0

Решение

Я обнаружил проблему, где-то глубоко в коде нашего приложения я обнаружил, что этот запрос иногда выполняется;

SET autocommit = 0

И оно никогда не возвращается к 1.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]