em-redis
em-redis copied to clipboard
Reconnecting doesn't reinvoke command, leads to hang
When the client disconnects (potentially due to timeout?) the previous command is not restarted nor is there any notification (callback). If the consumer was waiting on a command -- say a blocking one like BRPOP -- then the consumer will end up hanging indefinitely as em-redis will not reinvoke the command after the reconnect. However, given that not all commands are idempotent, a better way would be to invoke a 'reconnect' callback after em-redis reconnects.