diff options
| author | Barry Warsaw | 2012-04-21 18:09:39 -0400 |
|---|---|---|
| committer | Barry Warsaw | 2012-04-21 18:09:39 -0400 |
| commit | 7da6bb2bdba138877e53a70d224b253af14c65bc (patch) | |
| tree | b50034ee74a1bf99f4b7c3772a62bda51ee7d482 /src | |
| parent | 7abcd4faa1553fb012020b6204fb8b6208fa5bf2 (diff) | |
| parent | e95912521dddc8aab08757c3734df357b3985e73 (diff) | |
| download | mailman-7da6bb2bdba138877e53a70d224b253af14c65bc.tar.gz mailman-7da6bb2bdba138877e53a70d224b253af14c65bc.tar.zst mailman-7da6bb2bdba138877e53a70d224b253af14c65bc.zip | |
Diffstat (limited to 'src')
| -rw-r--r-- | src/mailman/database/transaction.py | 6 | ||||
| -rw-r--r-- | src/mailman/rest/wsgiapp.py | 13 | ||||
| -rw-r--r-- | src/mailman/runners/lmtp.py | 4 |
3 files changed, 9 insertions, 14 deletions
diff --git a/src/mailman/database/transaction.py b/src/mailman/database/transaction.py index 47e58d3e2..7a6ba00af 100644 --- a/src/mailman/database/transaction.py +++ b/src/mailman/database/transaction.py @@ -17,11 +17,11 @@ """Transactional support.""" -from __future__ import absolute_import, unicode_literals +from __future__ import absolute_import, print_function, unicode_literals __metaclass__ = type __all__ = [ - 'txn', + 'transactional', ] @@ -29,7 +29,7 @@ from mailman.config import config -class txn(object): +class transactional: """Decorator for transactional support. When the function this decorator wraps exits cleanly, the current diff --git a/src/mailman/rest/wsgiapp.py b/src/mailman/rest/wsgiapp.py index 36e8ae5ac..a735d2012 100644 --- a/src/mailman/rest/wsgiapp.py +++ b/src/mailman/rest/wsgiapp.py @@ -33,6 +33,7 @@ from wsgiref.simple_server import WSGIRequestHandler from wsgiref.simple_server import make_server as wsgi_server from mailman.config import config +from mailman.database.transaction import transactional from mailman.rest.root import Root @@ -51,17 +52,11 @@ class AdminWebServiceWSGIRequestHandler(WSGIRequestHandler): class AdminWebServiceApplication(RestishApp): """Connect the restish WSGI application to Mailman's database.""" + @transactional def __call__(self, environ, start_response): """See `RestishApp`.""" - try: - response = super(AdminWebServiceApplication, self).__call__( - environ, start_response) - except: - config.db.abort() - raise - else: - config.db.commit() - return response + return super(AdminWebServiceApplication, self).__call__( + environ, start_response) diff --git a/src/mailman/runners/lmtp.py b/src/mailman/runners/lmtp.py index 45fa5a783..249ab94c1 100644 --- a/src/mailman/runners/lmtp.py +++ b/src/mailman/runners/lmtp.py @@ -41,7 +41,7 @@ from zope.component import getUtility from mailman.config import config from mailman.core.runner import Runner -from mailman.database.transaction import txn +from mailman.database.transaction import transactional from mailman.email.message import Message from mailman.interfaces.listmanager import IListManager from mailman.utilities.datetime import now @@ -154,7 +154,7 @@ class LMTPRunner(Runner, smtpd.SMTPServer): Channel(self, conn, addr) slog.debug('LMTP accept from %s', addr) - @txn + @transactional def process_message(self, peer, mailfrom, rcpttos, data): try: # Refresh the list of list names every time we process a message |
