hiredis-rb
hiredis-rb copied to clipboard
Ruby wrapper for hiredis
This implements support for the Ruby 3.0+ Fiber Scheduler interface. If a Fiber Scheduler (such as the one defined by the Async library) is present, then we invoke its hooks...
Ruby 3.0 introduced the FiberScheduler interface so that evented libraries like [Async](https://github.com/socketry/async) can hook into low-level blocking IO events and use them to efficiently schedule/coordinate concurrent Fiber-driven tasks behind the...
Hi, I've been trying to monitor Redis network latency within Sidekiq by using `PING` but I've learned that a process pegged at 100% CPU will dramatically overstate latency due to...
Hi! 👋 We noticed that all call that take a timeout argument like `brpoplpush` do not accept a timeout greater than 2142 seconds. ``` $ r.brpoplpush('test', 'test2', timeout: 2143) RangeError:...
Hello, In Fedora we're running the test suite, still with your ext. built against system **hiredis 0.13.3**, and I've encountered this issue: ``` 1) Error: ExtConnectionTest#test_recover_from_partial_write: Errno::EAGAIN: Resource temporarily unavailable...
Hi there. While investigating a GC-related issue (https://github.com/ohler55/oj/issues/265#issuecomment-147554809), @ohler55 mentioned that he looked at the `hiredis-rb` C code and saw some stuff that wasn't GC safe and might be the...
Sometimes this code fails (on different iteration) with `Errno::EINVAL: Invalid argument` when redis server is down. ``` ruby redis = Redis.new(driver: :hiredis) 10000.times do |i| puts(i.to_s) begin redis.get(1) rescue Redis::CannotConnectError...
When I connect to a server with authentication, I get the following error: ``` Errno::EINVAL: Invalid argument from /home/dan/.rvm/gems/ruby-2.5.3@gemset/gems/redis-4.1.0/lib/redis/connection/hiredis.rb:19:in `connect' /home/dan/.rvm/gems/ruby-2.5.3@gemset/gems/redis-4.1.0/lib/redis/connection/hiredis.rb:19:in `connect' /home/dan/.rvm/gems/ruby-2.5.3@gemset/gems/redis-4.1.0/lib/redis/client.rb:342:in `establish_connection' /home/dan/.rvm/gems/ruby-2.5.3@gemset/gems/redis-4.1.0/lib/redis/client.rb:104:in `block in connect' /home/dan/.rvm/gems/ruby-2.5.3@gemset/gems/redis-4.1.0/lib/redis/client.rb:299:in `with_reconnect'...
I know that the hiredis extension is not supported on Windows, but I thought it was supposed to fall back to a pure Ruby implementation. It seems that does not...
This would bring it up to par with hiredis-py.