Mercurial > p > roundup > code
view website/issues/detectors/newissuecopy.py @ 7665:6f841a55eabf
fix: database error handling during import of a non-user item
The code to handle the case of retired and active users causing errors
during import can get called on other db errors as well (e.g. out of
memory in postgresql).
The code that trys to detect/repair the out of order user case hard
coded the db.user class. This crashed when a db error occurred when
loading another data object (e.g. msg). Fix the crash by using the
proper db object class for the object class being loaded.
Credit to Norbert Schlemmer for finding this.
| author | John Rouillard <rouilj@ieee.org> |
|---|---|
| date | Wed, 18 Oct 2023 15:49:53 -0400 |
| parents | 35ea9b1efc14 |
| children |
line wrap: on
line source
from roundup import roundupdb def newissuecopy(db, cl, nodeid, oldvalues): ''' Copy a message about new issues to a team address. ''' # so use all the messages in the create change_note = cl.generateCreateNote(nodeid) # send a copy to the nosy list for msgid in cl.get(nodeid, 'messages'): try: # note: last arg must be a list cl.send_message(nodeid, msgid, change_note, ['roundup-devel@lists.sourceforge.net']) except roundupdb.MessageSendError as message: raise roundupdb.DetectorError(message) def init(db): db.issue.react('create', newissuecopy) #SHA: 6ed003c947e1f9df148f8f4500b7c2e68a45229b
