Closed amackera closed 9 years ago
As an update, after disabling heartbeats, my blocking implementation using puka has been performing perfectly.
Yeah, support for heartbeats is a hack. I don't think that self.send_buf
is ever Null except when the connection died, can you confirm it happens in your case?
Less ideal, but you can try using TCP keepalives (and delegate the work the operating system).
Hello all,
When I have heartbeat enabled in my client settings, I occasionally see
AttributeError: 'NoneType' object has no attribute 'write'
in my error logs.Here's the stack trace:
Looks to me like the way that heartbeats work in puka don't work very well with blocking architectures. A simple fix is to check if
self.send_buf == None
before writing, but I'm not sure what else that could break.I've disabled heartbeats for now