Chris S wrote at 2006-7-26 16:03 -0400: > ... >When a file containing source code is modified, I want to reload it >using Python's reload() function, then update classes with the new >definitions. I have application-level logic to ensure the objects are >in a sane-state during update. The only problem I'm having is when I >close the connection after an update, I get ConnectionStateError, >"Cannot close a connection joined to a transaction".
Apparently, you modified some objects handled by this connection. You *MUST* not close the connection without deciding what to do with the modifications -- either commit or abort them! Not deciding before a connection close will mean that the modifications linger around and are committed/aborted with the next transaction -- i.e. in a somewhat non-deterministical way. This can lead to really nasty inconsistencies. The exception you got it *VERY* helpful! -- Dieter _______________________________________________ For more information about ZODB, see the ZODB Wiki: http://www.zope.org/Wikis/ZODB/ ZODB-Dev mailing list - ZODB-Dev@zope.org http://mail.zope.org/mailman/listinfo/zodb-dev