I’m using a Rails app connecting to an uptash paid instance. Its pretty common to see ReadTimeoutErrors as follows
RedisClient::ReadTimeoutError: Waited 3.0 seconds (RedisClient::ReadTimeoutError)
from redis-client (0.22.1) lib/redis_client/ruby_connection/buffered_io.rb:214:in `block in fill_buffer'
from <internal:kernel>:187:in `loop'
from redis-client (0.22.1) lib/redis_client/ruby_connection/buffered_io.rb:197:in `fill_buffer'
from redis-client (0.22.1) lib/redis_client/ruby_connection/buffered_io.rb:187:in `ensure_remaining'
from redis-client (0.22.1) lib/redis_client/ruby_connection/buffered_io.rb:152:in `getbyte'
from redis-client (0.22.1) lib/redis_client/ruby_connection/resp3.rb:113:in `parse'
from redis-client (0.22.1) lib/redis_client/ruby_connection/resp3.rb:50:in `load'
from redis-client (0.22.1) lib/redis_client/ruby_connection.rb:98:in `block in read'
from redis-client (0.22.1) lib/redis_client/ruby_connection/buffered_io.rb:114:in `with_timeout'
from redis-client (0.22.1) lib/redis_client/ruby_connection.rb:98:in `read'
from redis-client (0.22.1) lib/redis_client/connection_mixin.rb:31:in `call'
from redis-client (0.22.1) lib/redis_client.rb:340:in `block (2 levels) in blocking_call'
from redis-client (0.22.1) lib/redis_client/middlewares.rb:16:in `call'
from sentry-ruby (5.17.3) lib/sentry/redis.rb:88:in `block in call'
from sentry-ruby (5.17.3) lib/sentry/redis.rb:17:in `block in instrument'
from sentry-ruby (5.17.3) lib/sentry/hub.rb:102:in `with_child_span'
from sentry-ruby (5.17.3) lib/sentry-ruby.rb:490:in `with_child_span'
from sentry-ruby (5.17.3) lib/sentry/redis.rb:16:in `instrument'
from sentry-ruby (5.17.3) lib/sentry/redis.rb:88:in `call'
from redis-client (0.22.1) lib/redis_client.rb:339:in `block in blocking_call'
from redis-client (0.22.1) lib/redis_client.rb:699:in `ensure_connected'
from redis-client (0.22.1) lib/redis_client.rb:338:in `blocking_call'
from redis-client (0.22.1) lib/redis_client/decorator.rb:26:in `blocking_call'
from sidekiq (7.2.2) lib/sidekiq/fetch.rb:47:in `block in retrieve_work'
from sidekiq (7.2.2) lib/sidekiq/capsule.rb:102:in `block in redis'
from connection_pool (2.3.0) lib/connection_pool.rb:65:in `block (2 levels) in with'
from connection_pool (2.3.0) lib/connection_pool.rb:64:in `handle_interrupt'
from connection_pool (2.3.0) lib/connection_pool.rb:64:in `block in with'
from connection_pool (2.3.0) lib/connection_pool.rb:61:in `handle_interrupt'
from connection_pool (2.3.0) lib/connection_pool.rb:61:in `with'
from sidekiq (7.2.2) lib/sidekiq/capsule.rb:99:in `redis'
from sidekiq (7.2.2) lib/sidekiq/component.rb:28:in `redis'
from sidekiq (7.2.2) lib/sidekiq/fetch.rb:47:in `retrieve_work'
from sidekiq (7.2.2) lib/sidekiq/processor.rb:87:in `get_one'
from sidekiq (7.2.2) lib/sidekiq/processor.rb:99:in `fetch'
from sidekiq (7.2.2) lib/sidekiq/processor.rb:81:in `process_one'
from sidekiq (7.2.2) lib/sidekiq/processor.rb:72:in `run'
from sidekiq (7.2.2) lib/sidekiq/component.rb:10:in `watchdog'
from sidekiq (7.2.2) lib/sidekiq/component.rb:19:in `block in safe_thread'
There is no fancy configuration in the app or heavy use. Is someone facing the same issue? Is there any recommended step to fix this?