CPU負荷を400%引き起こすクエリ

チャットで @all メンションを有効にしたクライアントがおり、16,000 人のユーザーがいる 2 つのチャンネルがありました。それは楽しかったです!
19 回の全員へのメンションの後、彼らはすぐにそれを無効にしました。12 時間後、彼らの(強力な)システムは依然として高い CPU 負荷がかかっていました。

問題は、メンションテーブルから 320,000 件の該当レコードを削除することで解決されました。

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

しかし、なぜこれがこれほど多くの問題を引き起こしていたのか、私たちはまだ困惑していました。
このクエリ の多くのインスタンスがまだ実行されていました。

行はすでに削除されていたため、explain は良い結果を出しませんでしたが、かなりの負荷がかかっていたことは明らかでした。すべてのインデックスは配置されています。

「いいね!」 1