summaryrefslogtreecommitdiff
path: root/paste/transaction.py
diff options
context:
space:
mode:
authorcce <devnull@localhost>2007-04-05 16:45:54 +0000
committercce <devnull@localhost>2007-04-05 16:45:54 +0000
commite894ce17cea713c1963d7d953e1fa2ffcdce7388 (patch)
treebeca74234eba618975a0eb5c1504a2958c6be2e8 /paste/transaction.py
parent055d0978635773630f1980f7201b033002049427 (diff)
downloadpaste-e894ce17cea713c1963d7d953e1fa2ffcdce7388.tar.gz
don't choke if transaction is already rolled back
Diffstat (limited to 'paste/transaction.py')
-rw-r--r--paste/transaction.py6
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]))