одной строчки 2+ часа)
При этом диск не нагружен совсем, проц тоже.
Антивирус выключили.
Блоккировок нет.
Индексы по внешник ключам у зависимых таблиц есть.
Из-за чего тормоза могут быть?
Не пойму куда еще можно посмотреть, прямо сейчас удаление запущено.
delete from table where ? а так explain больше покажет. Реплика еще настроена поди ?
Реплика отсутствует. EXPLAIN ANALYZE в навикате показал все в отдельном гриде и сохранить не получилось, видно было что там каскадное удаление по десятку таблиц запускается. Сейчас в psql запустил чтобы сохранить, но ждать это несколько часов придется. Думаю пока что можно посмотреть в процессе.
выше написал + возможно блокировка висит
в том то и дело что нет блокировки и нагрузки тоже нет на диск\проц (
Закреп-то покажыте: https://t.me/pgsql/303899 (Ну и да, каскадное удаление кагбэ намекает, что в одной или нескольких таблицах, ссылающихся на эту — отсутствует индэкс на соответствующие поля. Но можэт и нет. Можэт там просто миллиард записей удаляется.)
При отсутствие индекса началось бы полное сканирование таблицы, что вызвало бы нагрузку на диск. То же самое при удалении миллиарда записей ( А тут очереди нет, на запись 800 Кб в сек на чтение 70 Кб в сек... Индексы по внешним ключам проверял. (и скриптами и даже в ручную) https://stackoverflow.com/questions/970562/postgres-and-indexes-on-foreign-keys-and-primary-keys -- check for FKs where there is no matching index -- on the referencing side -- or a bad index ... WITH fk_actions ( code, action ) AS ( VALUES ( 'a', 'error' ) ... Если поделитесь еще каким-нибудь скриптиком для проверки, буду благодарен. Версия 11 Запрос DELETE FROM my_table WHERE id=100; ИНдекс по id есть, он уникальный.
Ну, вам ужэ всё в принцыпе сказали. Смотрите pg_stat_activity, что он там делает, соьирайте всю инфу из закрепа.
Оно там выполняется, блокировок нет. DDL всех десятков таблиц, учавствующих в каскадном удалении смысла писать не вижу.
1) Я не верю в магию. Процэсс или что-то делает, или чего-то ждёт. Расследование этого начинается с pg_stat_activity, результаты explain и gdb — могут быть полезны. Ещё можно количество bloat в таблицах подсчитать, нет ли там таблиц с 2/3 и более мусора непылешошэнного. 2) Я не верю в магию. Потому не могу тут наванговать, что у вас там случилось без рапортов утилит анализа системы. Соответственно, раз вы жмётесь выкладывать данные — то ничего конкретного сказать не выйдет. Только общие советы, вам их все дали.
Похоже проблема найдена. На сервере было два антивируса. Второй оставался включеным. Как отключили - стало норм.
Она самая. Надо наверное третий антивирус ставить чтобы таких проблем не было :-)
хм, антивирус как мне кажется по идее должен был грузить систему (а именно CPU), раз он в режиме реального времени отслеживает угрозы
Обсуждают сегодня