summaryrefslogtreecommitdiff
path: root/cpp/src/Freeze/TransactionI.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/Freeze/TransactionI.cpp')
-rw-r--r--cpp/src/Freeze/TransactionI.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/cpp/src/Freeze/TransactionI.cpp b/cpp/src/Freeze/TransactionI.cpp
index 725953a4c6c..e8f1bdb2932 100644
--- a/cpp/src/Freeze/TransactionI.cpp
+++ b/cpp/src/Freeze/TransactionI.cpp
@@ -137,10 +137,12 @@ Freeze::TransactionI::rollbackInternal(bool warning)
out << "failed to rollback transaction " << hex << txnId << dec << ": " << dx.what();
}
+ DeadlockException deadlockException(__FILE__, __LINE__, dx.what(), this);
+
postCompletion(false, true);
// After postCompletion is called the transaction may be
// dead. Beware!
- throw DeadlockException(__FILE__, __LINE__, dx.what());
+ throw deadlockException;
}
catch(const ::DbException& dx)
{