mperham/dalli — pull request #182 by jkchow (2012-03-12 17:28:31+00:00)
Title: Dalli doesn't properly reconnect async connection if memcache remotely closes connection

Dalli doesn't check whether the async socket was closed remotely by the memcached server, so all read/write operations hang when trying to read from socket (most likely from yielding the Fiber and not hearing any responses back).

Added a conditional to call the EM::Synchrony::Socket#closed? method to correctly check whether the async connection is truly alive. (I made a [fix to the em-synchrony gem](https://github.com/igrigorik/em-synchrony/pull/115#issuecomment-4443982) that fixes the #closed? behavior just for this scenario).

Love the Dalli gem, keep up the good work guys.