Ok, então, para dar continuidade: tudo parece estar bem, o postmaster se acalmou drasticamente e o Sidekiq está rodando muito rápido novamente.
Para resumir o que funcionou no meu cenário (com o nome de banco de dados padrão ‘discourse’):
cd /var/discourse/
./launcher enter app
sudo -u postgres psql
\c discourse
Em seguida, do console do PostgreSQL, cada um dos comandos abaixo foi executado. Cada um leva um pouco de tempo para completar, dependendo do tamanho do banco de dados; os dois primeiros também causaram alto uso de CPU:
VACUUM FULL VERBOSE;
REINDEX DATABASE discourse;
VACUUM VERBOSE ANALYZE;
Nota: Não notei diferença até que o comando VACUUM VERBOSE ANALYZE; fosse executado, conforme recomendado por @Falco. Portanto, os dois primeiros podem não ter sido necessários. No entanto, os dois primeiros pareciam ser fundamentais para resolver esse problema no passado na versão anterior do PostgreSQL.
Se você receber um erro como ‘ERROR: deadlock detected’ durante o comando REINDEX DATABASE discourse; — basta tentar executá-lo novamente até que funcione. Isso aconteceu comigo da última vez (na versão anterior do PostgreSQL).
Existem algumas recomendações para executar um reindexamento concorrente em vez do reindexamento acima: PostgreSQL 12 update
No entanto, observe que @eboehnisch acima recebeu um erro ao executar o reindexamento concorrente, veja acima.