Chris Withers wrote:
> I wonder if Izak inadvertently has lots of savepoints lying around?
I looked at the code and I have to agree that I cannot see anything
obviously wrong there. I just checked a number of zope processes and I
see they all have 4 or 5 of these "deleted" files open. These files were
created using tempfile.TemporaryFile (which on posix system unlinks the
file directly after opening it). If this was caused by a missing close()
call, I would expect the number of open files to grow. This does not happen.
These checkpoint files do grow though, and eventually they fill up the
Jim's comment about the file being kept open for the life of the client
makes sense. Tell me, does the size of the file ever decrease, or does
it continue to grow? For example:
$ ls -lHh /proc/23770/fd/21
-rw------- 0 zope zope 6.3G 2009-06-25 13:58 /proc/23770/fd/21
I very seriously doubt we have a 6.3GB sized transaction anywhere.
For more information about ZODB, see the ZODB Wiki:
ZODB-Dev mailing list - ZODB-Dev@zope.org