Pour certains groupes où il y a des « fantômes de messages », cela ne fonctionne pas. Ces groupes peuvent être identifiés par cette requête (à condition que la messagerie ait été restreinte dans les paramètres d’interaction du groupe) :
SELECT id, name, has_messages, messageable_level
From groups
Where messageable_level < 10
AND messageable_level <> 3
AND has_messages = true
ORDER by id
Vous pouvez modifier la table groups pour forcer la réinitialisation également (dans la console Rails bien sûr, sauvegardez d’abord !).
Group.where(id: XXX).update_all(has_messages: false)
Si cela ne fonctionne pas ou si cela se rétablit, vous devrez peut-être également nettoyer les tables topic_groups et topic_allowed_groups :
TopicGroup.where(group_id: XXX).destroy_all
TopicAllowedGroup.where(group_id: XXX).destroy_all