Hi Shane,

On 22/05/2012 06:37, Chris Withers wrote:
So, the problem is that, with a Zope 2 app server, any revisions made to
an object (say, a Page Template) don't show in the history tab of that
object *until* the app server is restarted.

Okay, the issue appears to be that, in some circumstances, RelStorage is leaving the read connection with an open transaction that isn't rolled back.

I couldn't find the source of this, but in the meantime, I less heavyweight hack is:

diff --git a/relstorage/storage.py b/relstorage/storage.py
index 2d592d3..459469b 100644
--- a/relstorage/storage.py
+++ b/relstorage/storage.py
@@ -1025,6 +1025,7 @@ class RelStorage(
+            self._load_conn.rollback()
             cursor = self._load_cursor
             oid_int = u64(oid)

However, that open transaction is likely to cause other problems (I'm fairly certain I've seen other effects of this) so do you have any idea where to look for it?



Simplistix - Content Management, Batch Processing & Python Consulting
            - http://www.simplistix.co.uk
For more information about ZODB, see http://zodb.org/

ZODB-Dev mailing list  -  ZODB-Dev@zope.org

Reply via email to