Christian Theune wrote at 2008-8-27 16:40 +0200:
>I located an issue with leaking file descriptors in the ZEO tests and
>have a simple proposal how to fix it. (I can imagine a better way to
>exist but can't see one right now.)
>Here's what happens:
>- The (single) thread in the client process uses a
>  ManagedClientConnection.
>- The __init__ of ManagedClientConnection's super class causes a trigger
>  to be created which will then be replaced with a shared trigger by
>  ManagedClientConnection's __init__.
>- Unfortunately at this time the trigger that got temporarily created
>  won't be garbage collected (or at least the file descriptor won't be),
>  as asyncore holds a shared, module-global map of file descriptor
>  numbers to file descriptor objects.
>I fixed it for me by explicitly closing the trigger in
>ManagedClientConnection before replacing it with the shared one.

Sounds not bad.

For more information about ZODB, see the ZODB Wiki:

ZODB-Dev mailing list  -

Reply via email to