Bug #26306
crash KeyError sur draft plus trouvé
Début:
11 septembre 2018
Echéance:
% réalisé:
0%
Temps estimé:
Patch proposed:
Oui
Planning:
Description
Suite de #25266, dans submissions.py
Exception: type = '<type 'exceptions.KeyError'>', value = '' Stack trace (most recent call first): File "/usr/lib/python2.7/dist-packages/wcs/sql.py", line 965, in get 963 if ignore_errors: 964 return None > 965 raise KeyError() 966 cur.close() 967 return cls._row2ob(row) locals: cls = <class 'wcs.sql.TrackingCode'> conn = <connection object at 0x7f9a8a3f0d70; dsn: 'dbname=xxxx', closed: 0> cur = <cursor object at 0x7f9a5a554620; closed: -1> id = 'xxx' ignore_errors = False ignore_migration = False row = None sql_statement = 'SELECT id, formdef_id, formdata_id\n FROM tracking_codes\n WHERE id = %(id)s' x = ('formdata_id', 'varchar') File "/usr/lib/python2.7/dist-packages/wcs/sql.py", line 342, in f 340 except psycopg2.Error: 341 get_connection().rollback() > 342 raise 343 return f 344 locals: args = (<class 'wcs.sql.TrackingCode'>, 'xxx') func = <function get at 0x7f9a8bfd4230> kwargs = {} File "/usr/lib/python2.7/dist-packages/wcs/backoffice/submission.py", line 71, in _q_lookup 69 70 if formdata.tracking_code: > 71 tracking_code = get_publisher().tracking_code_class.get(formdata.tracking_code) 72 tracking_code.remove_self() 73 formdata.remove_self() locals: component = '14649' form = <qommon.form.Form object at 0x7f9a82ccdd90> formdata = <Demande-xxxx id:14649> self = <wcs.backoffice.submission.RemoveDraftDirectory object at 0x7f9a8a726fd0> File "/usr/lib/pymodules/python2.7/quixote/directory.py", line 57, in _q_traverse 55 obj = getattr(self, name) 56 else: > 57 obj = self._q_lookup(component) 58 if obj is None: 59 raise TraversalError(private_msg=('directory %r has no component '
Fichiers
Historique
Mis à jour par Thomas Noël il y a plus de 5 ans
- Fichier 0001-backoffice-submission-don-t-crash-on-missing-drafts-.patch 0001-backoffice-submission-don-t-crash-on-missing-drafts-.patch ajouté
- Statut changé de Nouveau à Solution proposée
- Patch proposed changé de Non à Oui
et comme sur #25266, je ne saisi pas bien comment c'est possible, sauf peut-être un clic sur "remove" alors que le tracking_code n'existe pas encore mais je ne peux y croire, bref, voilà mon hotfix à l'aveugle
Mis à jour par Thomas Noël il y a plus de 5 ans
- Statut changé de Solution proposée à Rejeté