evilkost / brukva

Asynchronous Redis client that works within Tornado IO loop.
Other
265 stars 33 forks source link

Redis set callback not being called. #19

Open patrickod opened 12 years ago

patrickod commented 12 years ago

I'm having trouble with an intermittent timeout between redis and brukva. I'm setting a key,value record and assigning a callback which is never called.

TCPDump shows redis receiving the SET message with the appropriate payload but the callback is never executed leaving requests to time out.

Restarting the tornado instances that use brukva does not solve the issue, however restarting both restarting redis-server and tornado in that order solves the problem.

I'm using redis version 2.4.4 on Debian Squeeze. I'm using tornado 2.1.1 and brukva 0.0.1

Any help would be appreciated as this bug is killing my app on a regular basis.

patrickod commented 12 years ago

So I have an error code to associate with the problem now.

client.py:49 __exit__() - Strange exception with None value type: <type 'exceptions.GeneratorExit'>; tb:   File "/usr/local/lib/python2.6/dist-packages/brukva-0.0.1-py2.6.egg/brukva/client.py", line 441, in execute_command#012    data = yield async(self.connection.readline)()#012Traceback (most recent call last):#012  File "/usr/local/lib/python2.6/dist-packages/brukva-0.0.1-py2.6.egg/brukva/client.py", line 441, in execute_command#012    data = yield async(self.connection.readline)()#012GeneratorExit: Strange exception with None value type: <type 'exceptions.GeneratorExit'>; tb:   File "/usr/local/lib/python2.6/dist-packages/brukva-0.0.1-py2.6.egg/brukva/client.py", line 441, in execute_command#012    data = yield async(self.connection.readline)()
patrickod commented 12 years ago

Is there any update on this issue? Has anyone else experienced it?