Notifications récurrentes d'un post utilisateur dues au plugin Follow User

Salut à tous,

Une petite question : depuis que j’ai restauré mon site à partir d’une sauvegarde, chaque fois que cet utilisateur spécifique répond à un sujet, cela génère des notifications « Modifier » incessantes pour l’utilisateur qui a créé le sujet ou celui auquel on répond.

J’ai essayé d’enquêter et il semble qu’il y ait un problème étrange dans Sidekiq : dans la section « Retries », certains jobs s’accumulent sans jamais sembler réussir. Après les avoir supprimés, les notifications s’arrêtent (jusqu’à ce que la personne publie sur un autre sujet, ce qui en génère un nouveau).

Les messages ont ce format :

Next Retry Retry Count Queue Job Arguments Error
in 1 minute 10 default Jobs::PostAlert {“post_id”=>25977142, “new_record”=>true, “options”=>nil, “current_site_id”=>“default”} Jobs::HandledExceptionWrapper: Wrapped ActiveRecord::RecordNotFound: Couldn’t find User with ‘id’=1452

D’après ce que je peux en déduire, il semblerait qu’un utilisateur n’existe pas (même si cela se produit avec des publications d’un utilisateur qui existe bel et bien et est actif). Peut-être s’agit-il d’un autre utilisateur. Existe-t-il une requête ou quelque chose que je puisse faire pour vérifier cela ?

J’ai essayé de chercher dans la documentation, mais si je dois « corriger » quelque chose, j’ai peur de tout faire sauter :sweat_smile:

Merci d’avance pour toute aide !

2 « J'aime »

Petite mise à jour :

  • Cela ne se produit que pour cet utilisateur précis.
  • Les notifications envoyées aux utilisateurs indiquent que chaque message écrit par cet utilisateur est « modifié » (c’est-à-dire : si cet utilisateur répond à un autre, ce dernier reçoit des notifications de modification récurrentes concernant ce même message).
  • La reconstruction ne résout pas le problème.
  • Supprimer le travail en échec dans Sidekiq semble arrêter le problème définitivement pour cette notification, mais chaque fois que cet utilisateur publie, le problème réapparaît.

Petite modification :

  • J’ai tenté une requête pour cet utilisateur : il n’existe pas, mais je ne vois pas comment cela pourrait être lié à un utilisateur existant (peut-être que la requête est incorrecte ?). Sur la page d’administration, en examinant ce message tant pour la requête que pour l’URL d’administration, je dispose d’un utilisateur « 1451 » et d’un utilisateur « 1453 », mais (comme l’indique l’erreur) pas d’utilisateur « 1452 ». Et l’utilisateur qui « déclenche » ce problème est un modérateur dont l’ID est 55 :stuck_out_tongue:

Petite modification + :

  • Je réfléchis ici. Quelqu’un pourrait-il m’expliquer les implications de l’« injection » de l’utilisateur dit « manquant » que je vois dans les erreurs ? Autrement dit, si j’ajoute cette ligne à la base de données, Sidekiq et les travaux cesseront-ils d’échouer ?
1 « J'aime »

Utilisez-vous par hasard le plugin Follow User ? J’ai rencontré un problème similaire où les utilisateurs supprimés ne disparaissaient pas de la liste de suivi de quelqu’un et les notifications restaient bloquées dans une boucle. Ma solution a été de supprimer manuellement certains enregistrements de la base de données. Le problème dans le plugin a été corrigé, mais si vous utilisez une version plus ancienne, vous pourriez encore rencontrer ce problème.

3 « J'aime »

Mon Discours sacré ! Oui, je l’utilise ! :stuck_out_tongue:

Je vais vérifier la version pour voir si cela peut être lié. Un million de remerciements @bartv !

3 « J'aime »

Super ! Notez que même si le plugin a été mis à jour, vos données peuvent avoir été corrompues par l’ancienne version. J’ai retrouvé mon ancien message à ce sujet. Il n’est pas détaillé, mais cela pourrait vous mettre sur la bonne voie :

https://meta.discourse.org/t/follow-plugin/110579/41?u=bartv

4 « J'aime »