Bug #1222
crash lors d'email dans un cron
Status:
Fermé
Priority:
Normal
Assignee:
-
Target version:
-
Start date:
16 January 2012
Due date:
% Done:
90%
Estimated time:
Patch proposed:
Planning:
Description
Lorsqu'on est en mode cron, get_response() ne fonctionne pas (logique) et on ne peut donc pas ajouter des "after jobs" pour l'envoi des mails (cf trace ci dessous).
perform_items <wcs.workflows.SendmailWorkflowStatusItem instance at 0x18c9368> [2012-01-16 16:54:08] exception caught Exception: type = '<type 'exceptions.AttributeError'>', value = ''NoneType' object has no attribute 'response'' Stack trace (most recent call first): File "/usr/lib/pymodules/python2.7/quixote/publish.py", line 317, in get_response 315 316 def get_response(): > 317 return _publisher.get_request().response 318 319 def get_field(name, default=None): File "/home/thomas/dev/au-quoditien/wcs/wcs/qommon/emails.py", line 332, in email 330 s.close() 331 else: > 332 get_response().add_after_job('sending email', 333 EmailToSend(msg_from, rcpts, msg.as_string()), 334 fire_and_forget = True) locals: attachments = () encoding = 'utf-8' multipart = None hide_recipients = False
Files
Related issues
Associated revisions
History
Updated by Thomas Noël almost 12 years ago
- Status changed from Nouveau to En cours
Un contournement proposé : quand il n'y a pas de request (et donc pas de réponse associée), on passe dans le mode "not fire_and_forget" pour les mails. A faire au debut de qommon.emails.email() ... ?
Updated by Thomas Noël almost 12 years ago
- File wcs-cron-email.diff wcs-cron-email.diff added
- Status changed from En cours to Solution déployée
Et voici un patch.
emails: don't delay the handling when there is no request (cronjob)
fix #1222