Query causando 400% de Carga na CPU

Tivemos um cliente que ativou menções @all no chat, com dois canais de 16 mil usuários. Foi divertido!
Após 19 menções a todos, eles rapidamente desativaram novamente. 12 horas depois, o sistema deles (robusto) ainda estava com alta carga de CPU.

O problema foi resolvido limpando os 320 mil registros ofensivos da tabela de menções

delete from chat_mentions
where chat_message_id in (
  (select chat_message_id
   from chat_mentions
   group by chat_message_id having count(*) > 100)
);

mas ainda estávamos intrigados por que isso estava causando tantos problemas.
Houve um número de instâncias desta consulta aqui ainda em execução.

Como as linhas já haviam sumido, um explain não deu bons resultados, mas é claro que estava fazendo um trabalho pesado. Todos os índices estão no lugar.

1 curtida