[ZODB-Dev] Threads and Connections

Dieter Maurer dieter at handshake.de
Sat Jul 29 08:30:24 EDT 2006


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


More information about the ZODB-Dev mailing list