mrrooijen / msngr

A light-weight Ruby library for multi-threaded Ruby applications that allows threads to share a single service connection for more efficient messaging.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Can not connect to redis

aglushkov opened this issue · comments

Sometimes I have the 'Can not connect to redis' in listen! method
After six reconnects attempts it leads to Puma web server crash.
After restarting puma and msngr works fine some time. But can suddenly crash.

Messenger error occurred:
Redis::CannotConnectError
/var/www/tritium/current/vendor/bundle/ruby/2.2.0/gems/redis-3.2.2/lib/redis/client.rb:332:in `rescue in establish_connection'
/var/www/tritium/current/vendor/bundle/ruby/2.2.0/gems/redis-3.2.2/lib/redis/client.rb:318:in `establish_connection'
/var/www/tritium/current/vendor/bundle/ruby/2.2.0/gems/redis-3.2.2/lib/redis/client.rb:94:in `block in connect'
/var/ww
is::CannotConnectError
/var/www/tritium/current/vendor/bundle/ruby/2.2.0/gems/redis-3.2.2/lib/redis/client.rb:332:in `rescue in establish_connection'
/var/www/tritium/current/vendor/bundle/ruby/2.2.0/gems/redis-3.2.2/lib/redis/client.rb:318:in `establish_connection'
/var/www/tritium/current/vendor/bundle/ruby/2.2.0/gems/redis-3.2.2/lib/redis/client.rb:94:in `block in connect'
/var/www/tritium/current/vendor/bundle/ruby/2.2.0/gems/redis-3.2.2/lib/redis/client.rb:280:in `with_reconnect'
/var/www/tritium/current/vendor/bundle/ruby/2.2.0/gems/redis-3.2.2/lib/redis/client.rb:93:in `connect'
/var/www/tritium/current/vendor/bundle/ruby/2.2.0/gems/redis-3.2.2/lib/redis/client.rb:351:in `ensure_connected'
/var/www/tritium/current/vendor/bundle/ruby/2.2.0/gems/redis-3.2.2/lib/redis/client.rb:208:in `block in process'
/var/www/tritium/current/vendor/bundle/ruby/2.2.0/gems/redis-3.2.2/lib/redis/client.rb:293:in `logging'
/var/www/tritium/current/vendor/bundle/ruby/2.2.0/gems/redis-3.2.2/lib/redis/client.rb:207:in `process'
/var/www/tritium/current/vendor/bundle/ruby/2.2.0/gems/redis-3.2.2/lib/redis/client.rb:127:in `block in call_loop'
/var/www/tritium/current/vendor/bundle/ruby/2.2.0/gems/redis-3.2.2/lib/redis/client.rb:267:in `with_socket_timeout'
/var/www/tritium/current/vendor/bundle/ruby/2.2.0/gems/redis-3.2.2/lib/redis/client.rb:274:in `without_socket_timeout'
/var/www/tritium/current/vendor/bundle/ruby/2.2.0/gems/redis-3.2.2/lib/redis/client.rb:126:in `call_loop'
/var/www/tritium/current/vendor/bundle/ruby/2.2.0/gems/redis-3.2.2/lib/redis/subscribe.rb:35:in `subscription'
/var/www/tritium/current/vendor/bundle/ruby/2.2.0/gems/redis-3.2.2/lib/redis/subscribe.rb:16:in `psubscribe'
/var/www/tritium/current/vendor/bundle/ruby/2.2.0/gems/redis-3.2.2/lib/redis.rb:2718:in `_subscription'
/var/www/tritium/current/vendor/bundle/ruby/2.2.0/gems/redis-3.2.2/lib/redis.rb:2113:in `block in psubscribe'
/var/www/tritium/current/vendor/bundle/ruby/2.2.0/gems/redis-3.2.2/lib/redis.rb:57:in `block in synchronize'
/home/tritium/.rvm/rubies/ruby-2.2.2/lib/ruby/2.2.0/monitor.rb:211:in `mon_synchronize'
/var/www/tritium/current/vendor/bundle/ruby/2.2.0/gems/redis-3.2.2/lib/redis.rb:57:in `synchronize'
/var/www/tritium/current/vendor/bundle/ruby/2.2.0/gems/redis-3.2.2/lib/redis.rb:2112:in `psubscribe'
/var/www/tritium/current/vendor/bundle/ruby/2.2.0/gems/msngr-0.0.1/lib/msngr/clients/redis.rb:28:in `on_message'
/var/www/tritium/current/vendor/bundle/ruby/2.2.0/gems/msngr-0.0.1/lib/msngr/messenger.rb:76:in `listen'
/var/www/tritium/current/vendor/bundle/ruby/2.2.0/gems/msngr-0.0.1/lib/msngr/messenger.rb:57:in `block (2 levels) in listen!'
/var/www/tritium/current/vendor/bundle/ruby/2.2.0/gems/msngr-0.0.1/lib/msngr/messenger.rb:55:in `loop'
/var/www/tritium/current/vendor/bundle/ruby/2.2.0/gems/msngr-0.0.1/lib/msngr/messenger.rb:55:in `block in listen!'
Restarting..