Медленный Sidekiq + Postmaster потребляют 95%+ CPU (32 ядра) после обновления версии Postgresql

Спасибо всем здесь! Я исправил дубликат ключа, удалил устаревшие индексы, а затем успешно выполнил:

REINDEX DATABASE discourse;
VACUUM VERBOSE ANALYZE;

Использование процессора вернулось к норме. Фух.

Вопрос: почему неоптимизированная база данных или повреждённый индекс приводят к такому высокому использованию процессора процессом postmaster? Просто интересно.

Я думаю, что сломанный индекс — это ложная тревога. Конечно, это не хорошо, и его нужно исправить.

Главная проблема в том, что этот переход с версии 10 на 12 оставляет базу данных с ужасной историей статистики, что приводит к плохой производительности.

Производительность низкая, потому что оптимизатор запросов выбирает очень неэффективные планы выполнения запросов, так как статистика, которой он располагает о данных в таблицах, совершенно неверна.

Мы интегрируем перестроение статистики через VACUUM в наш автоматизированный процесс миграции.

Спасибо, @sam, за объяснения. Это имеет смысл. Думаю, стоит интегрировать пересборку в автоматизированный процесс перемещения. Ещё раз спасибо за вашу помощь!