Решить проблему. СУБД: MySQL. Бьемся над проблемой несколько недель, нужна помощь! Используем mariadb 10.5.8, общий объем базы > 200Гб Есть большая таблица в innodb с ценами, она постоянно обновляется запросами вида update on duplicate и delete. Размер таблицы около 150Гб с индексами. В настройках базы включен innodb_stats_auto_recalc=1 Периодически происходит пересчет статистики этой таблицы, т.к. данные постоянно обновляются, это видно на графиках https://disk.yandex.ru/i/ehngWub9Xn8i5Q Иногда, но не всегда, в моменты когда размер индексов падает (начинается пересчет статистики), блочатся операции на изменение от 50 сек до 2 минут. Видно на следующих графиках: https://disk.yandex.ru/i/80G5ai7GKikMYA То есть в этот момент в processlist висят запросы на update\insert\delete и чего-то ждут. Все запросы, по всей базе, на любые таблицы. Ошибок в логах нет. Локов тоже нет. В логах локи вешаются только на повторные запросы по тем же id, первые (уникальные) запросы просто висят в состоянии query. Если на таблицу сделать alter table set STATS_AUTO_RECALC=0, то проблема исчезает. Ровно до тех пор пока статистика не испортится (около 8 часов) и вообще все join с этой таблицей не начинают выполнятся очень долго. Что делать? Куда копать? Думали может быть дело в железе, но проверили на разных стендах, разном железе, судя по всему это нормальное поведение mysql, т.к. на тестовом стенде удается это повторить просто делая постоянное обновление большой таблицы и параллельно выполняя update where id=1 раз в секунду на другой таблице. Наблюдается точно такая же картина.