Dieter> What you see is very strange.
That's strangely heartening. ;-)
Dieter> I could only imagine that the transaction you commit is not the
Dieter> transaction the modifications are registered with.
Dieter> This could, e.g., happen when you modify the objects in a thread
Dieter> different from where the transaction is committed (the default
Dieter> transaction manager manages a transaction per thread). However,
Dieter> you code does not give a hint that this is indeed the problem.
That's not the case here. Some SpamBayes apps use threads, but my
train-to-exhaustion script does not.
For more information about ZODB, see the ZODB Wiki:
ZODB-Dev mailing list - ZODB-Dev@zope.org