Erreur Sidekiq pour le Job Jobs::DeleteReplies

Bonjour,
Je rencontre de nombreuses échecs de tâches pour le Jobs::DeleteReplies. Je ne pense pas que cela puisse avoir un lien avec mes plugins. Peut-être une incompatibilité entre les mises à jour ?

Jobs::HandledExceptionWrapper: Wrapped NoMethodError: undefined method 'minutes' for nil:NilClass

De multiples tâches identiques s’accumulent dans l’onglet “retries” de Sidekiq..

image

Merci pour tout conseil..

MISE À JOUR : J’ai trouvé le topic_id associé et supprimé ce minuteur de topic spécifique, j’espère que cela aidera..
Je laisse cela ici, peut-être que cela pourrait être le résultat d’un bug..

C’est un bug dû à un changement que nous avons effectué très récemment ; il devrait être corrigé d’ici la semaine prochaine.

Merci pour la confirmation. Dois-je m’attendre à d’autres problèmes avec d’autres topic_timers ? Quel type de minuteur est concerné ? Seulement « supprimer le message après x » ? Cela s’est vraiment accumulé en masse dans la file d’attente (des milliers en quelques heures)… (heureusement, j’ai Prometheus… :))

La correction est ici :

Cette migration n’a pas fonctionné comme prévu :

DB.exec("UPDATE topic_timers SET duration_minutes = (duration * 60 * 24) WHERE duration_minutes != duration AND status_type = 7 AND duration IS NOT NULL")
DB.exec("UPDATE topic_timers SET duration_minutes = (duration * 60) WHERE duration_minutes != duration AND status_type != 7 AND duration IS NOT NULL")

La condition WHERE duration_minutes != duration ne fonctionne pas si duration_minutes est NULL, ce qui était le cas pour tous les enregistrements sontétaient.

Oui, seul le job Jobs::DeleteReplies référençait directement le nouveau champ duration_minutes, donc les autres minuteurs auraient dû être unaffected (d’après ce que je peux voir).