Projet

Général

Profil

Bug #25776

crash sur email récapitulatif si le formdef a été supprimé entre temps

Ajouté par Thomas Noël il y a plus de 5 ans. Mis à jour il y a plus de 5 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
-
Version cible:
-
Début:
23 août 2018
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:

Description

Exception:
  type = '<type 'exceptions.KeyError'>', value = ''

Stack trace (most recent call first):
  File "/usr/lib/python2.7/dist-packages/wcs/qommon/storage.py", line 375, in get_filename
   373             if ignore_errors:
   374                 return None
>  375             raise KeyError()
   376         except ImportError as e:
   377             if ignore_errors:

  locals:
     cls = <class 'wcs.formdef.FormDef'>
     filename = '/var/lib/wcs/calvados.test.entrouvert.org/formdefs/51'
     ignore_errors = False
     ignore_migration = False
     kwargs = {}

  File "/usr/lib/python2.7/dist-packages/wcs/qommon/storage.py", line 311, in get
   309         return cls.get_filename(filename, ignore_errors=ignore_errors,
   310                                 ignore_migration=ignore_migration,
>  311                                 **kwargs)
   312
   313     @classmethod

  locals:
     cls = <class 'wcs.formdef.FormDef'>
     filename = '/var/lib/wcs/calvados.test.entrouvert.org/formdefs/51'
     id = '51'
     ignore_errors = False
     ignore_migration = False
     kwargs = {}

  File "/usr/lib/python2.7/dist-packages/wcs/wf/aggregation_email.py", line 117, in send_aggregation_emails
   115                 formdef, formdata, workflow = cache[formdef_id]
   116             else:
>  117                 formdef = FormDef.get(formdef_id)
   118                 formdata = formdef.data_class()
   119                 workflow = formdef.workflow


Fichiers

Révisions associées

Révision ec8efb64 (diff)
Ajouté par Thomas Noël il y a plus de 5 ans

workflows: ignore deleted formdef/formdata in aggregation emails (#25776)

Historique

#1

Mis à jour par Thomas Noël il y a plus de 5 ans

#2

Mis à jour par Anonyme il y a plus de 5 ans

Notamment pour que je puisse appliquer le patch et le tester, je me dis que ça serait bien un petit test de régression.

À la relecture, je me demande si le FormDef a été supprimé, est-ce qu'il est possible qu'il soit encore dans le cache et que if formdef_id in cache à la ligne 115 soit positif ? Parce qu'alors, j'ai l'impression que l'email sera envoyé quand même.

#3

Mis à jour par Thomas Noël il y a plus de 5 ans

Elias Showk a écrit :

Notamment pour que je puisse appliquer le patch et le tester, je me dis que ça serait bien un petit test de régression.

J'ai eu la flemme parce que y'a 0 tests en place sur cette action... qu'on n'utilise jamais, en fait. (ça doit être remplacé par un système de notification)

À la relecture, je me demande si le FormDef a été supprimé, est-ce qu'il est possible qu'il soit encore dans le cache et que if formdef_id in cache à la ligne 115 soit positif ? Parce qu'alors, j'ai l'impression que l'email sera envoyé quand même.

Oui ça enverra un mail mais ça plantera pas :-) En fait c'est plutôt improbable parce que le cache est construit juste le temps du lancement de cette action, et parce qu'elle est lancée à 6h du matin, heure à laquelle personne ne vient supprimer un formdef. De toute façon, s'il faut gérer ça, ça veut juste dire ne plus gérer de cache, donc, voilà, non.

#4

Mis à jour par Frédéric Péters il y a plus de 5 ans

  • Statut changé de Solution proposée à Solution validée

ok en remplaçant le sujet trop long par "workflows: ignore deleted formdef/formdata in aggregation emails (#25776)".

#5

Mis à jour par Thomas Noël il y a plus de 5 ans

  • Statut changé de Solution validée à Résolu (à déployer)
commit ec8efb64977936f5743edb21b53c9c4fe41a1110
Author: Thomas NOEL <tnoel@entrouvert.com>
Date:   Thu Aug 23 09:19:06 2018 +0200

    workflows: ignore deleted formdef/formdata in aggregation emails (#25776)

#6

Mis à jour par Frédéric Péters il y a plus de 5 ans

  • Statut changé de Résolu (à déployer) à Solution déployée

Formats disponibles : Atom PDF