diff options
author | cce <devnull@localhost> | 2007-04-05 16:45:54 +0000 |
---|---|---|
committer | cce <devnull@localhost> | 2007-04-05 16:45:54 +0000 |
commit | e894ce17cea713c1963d7d953e1fa2ffcdce7388 (patch) | |
tree | beca74234eba618975a0eb5c1504a2958c6be2e8 /paste/transaction.py | |
parent | 055d0978635773630f1980f7201b033002049427 (diff) | |
download | paste-e894ce17cea713c1963d7d953e1fa2ffcdce7388.tar.gz |
don't choke if transaction is already rolled back
Diffstat (limited to 'paste/transaction.py')
-rw-r--r-- | paste/transaction.py | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/paste/transaction.py b/paste/transaction.py index 77e25b8..a283067 100644 --- a/paste/transaction.py +++ b/paste/transaction.py @@ -94,7 +94,11 @@ def BasicTransactionHandler(application, factory): if should_commit.pop() < 400: conn.commit() else: - conn.rollback() + try: + conn.rollback() + except: + # TODO: check if rollback has already happened + return conn.close() def basictrans_start_response(status, headers, exc_info = None): should_commit.append(int(status.split(" ")[0])) |