Redis::CommandError: ERR wrong number of arguments for 'hset' command in ruby 2.7 and rails 6.1.3

Viewed 668

Redis server v=5.0.3

target_servers.each do |server|
   ls = Redis.new(host: server, port: 1111, db: 1)
   if ls
      ls.pipelined do
        host.keys.sort.each do |hostname|
          ls.hset(mk, *host[hostname].flatten)
        end #loop
      end # pipelined
    end #if
end

When we run this code it throws below error -

Redis::CommandError: ERR wrong number of arguments for 'hset' command /var/home/user/.rvm/gems/ruby-2.7.3@proj/gems/redis-4.3.1/lib/redis/client.rb:231:in call_pipelined' /var/home/user/.rvm/gems/ruby-2.7.3@peoj/gems/redis-4.3.1/lib/redis/client.rb:185:in block in call_pipeline' /var/home/user/.rvm/gems/ruby-2.7.3@proj/gems/redis-4.3.1/lib/redis/client.rb:328:in with_reconnect' /var/home/user/.rvm/gems/ruby-2.7.3@proj/gems/redis-4.3.1/lib/redis/client.rb:183:in call_pipeline' /var/home/user/.rvm/gems/ruby-2.7.3@proj/gems/redis-4.3.1/lib/redis.rb:2453:in block in pipelined' /var/home/user/.rvm/gems/ruby-2.7.3@proj/gems/redis-4.3.1/lib/redis.rb:70:in block in synchronize' /var/home/user/.rvm/gems/ruby-2.7.3@proj/gems/redis-4.3.1/lib/redis.rb:70:in synchronize' /var/home/user/.rvm/gems/ruby-2.7.3@proj/gems/redis-4.3.1/lib/redis.rb:2449:in pipelined' /var/home/user/work/proj/lib/tasks/logstash.rake:88:in block (3 levels) in <top (required)>' /var/home/user/work/proj/lib/tasks/logstash.rake:80:in each' /var/home/user/work/proj/lib/tasks/logstash.rake:80:in block (2 levels) in <top (required)>' /var/home/user/.rvm/gems/ruby-2.7.3@proj/gems/airbrake-11.0.3/lib/airbrake/rake.rb:17:in execute' /var/home/user/.rvm/gems/ruby-2.7.3@proj/gems/rake-13.0.3/exe/rake:27:in <top (required)>' /home/user/.rvm/gems/ruby-2.7.3@proj/bin/ruby_executable_hooks:22:in eval' /home/user/.rvm/gems/ruby-2.7.3@proj/bin/ruby_executable_hooks:22:in `'

0 Answers
Related