• Jim Fulton's avatar
    Removed the "sync" mode for ClientStorage. Previously, a · f69aebcb
    Jim Fulton authored
    ClientStorage could be in either "sync" mode or "async" mode.  Now
    there is just "async" mode.  There is now a dedicicated asyncore main
    loop dedicated to ZEO clients.
    
    This addresses a test failure on Mac OS X,
    http://www.zope.org/Collectors/Zope3-dev/650, that I believe was due
    to a bug in sync mode. Some asyncore-based code was being called from
    multiple threads that didn't expect to be.
    
    Converting to always-async mode revealed some bugs that weren't caught
    before because the tests ran in sync mode.  These problems could
    explain some problems we've seen at times with clients taking a long
    time to reconnect after a disconnect.
    
    Added a partial heart beat to try to detect lost connections that
    aren't otherwise caught,
    http://mail.zope.org/pipermail/zodb-dev/2005-June/008951.html, by
    perioidically writing to all connections during periods of inactivity.
    f69aebcb
client.py 18.2 KB