Commit 42569a8a authored by Tim Peters's avatar Tim Peters

tpc_abort(): Release the commit lock no matter what.

parent d6d724bc
......@@ -5,6 +5,7 @@ Release date: 04-Oct-2005
Following are dates of internal releases (to support ongoing Zope 2
development) since ZODB 3.4's last public release:
- 3.4.2b3 05-Oct-2005
- 3.4.2b2 04-Oct-2005
- 3.4.2b1 03-Oct-2005
......@@ -18,6 +19,15 @@ Savepoints
happen, and stopped happening for subtransaction commits too. Making a
savepoint (or doing a subtransaction commit) does invoke cache gc now.
BaseStorage
-----------
- (3.4.2b3) Nothing done by ``tpc_abort()`` should raise an exception.
However, if something does (an error case), ``BaseStorage.tpc_abort()``
left the commit lock in the acquired state, causing any later attempt
to commit changes hang.
PersistentMapping
-----------------
......
......@@ -192,8 +192,8 @@ class BaseStorage(UndoLogCompatible):
self._abort()
self._clear_temp()
self._transaction = None
self._commit_lock_release()
finally:
self._commit_lock_release()
self._lock_release()
def _abort(self):
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment