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
>- 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 - ZODB-Dev@zope.org