# -*- encoding: utf-8 -*- # stub: redis-key_hash 0.0.2 ruby lib Gem::Specification.new do |s| s.name = "redis-key_hash".freeze s.version = "0.0.2".freeze s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version= s.require_paths = ["lib".freeze] s.authors = ["jhwillett".freeze] s.date = "2017-08-29" s.description = "\nredis-key_hash provides tests of key hash slot agreement for use with\nRedis Cluster and RedisLabs Enterprise Cluster.\n\nRedis Cluster (RC) and RedisLabs Enterprise Cluster (RLEC) both\nrequire that all keys in multi-key operations hash to the same node.\nThey use slightly different default hashing algorithms and RLEC offers\ncustomizable hash pattersn.\n\nIt is impossible to predict which nodes will host each shard, and\ndifficult to predict which slot will host each key. But it is easy to\nidentify the key hash tag which RC or RLEC will use to select a shard.\nWhere key hash tags agree, we can be certain that slots and nodes will\nalso agree - even if hash tag disagreement does not always imply slot\nor node disagreement.\n\nBy pulling this check into Ruby we can arrange to fail fast, before\nsending a command to Redis which is at risk of CROSSLOT failure. We\ncan also validate key management schemes in unit tests which run\nwithout support services or with a non-sharded Redis.\n".freeze s.email = ["jhw@prosperworks.com".freeze] s.files = [".gitignore".freeze, ".travis.yml".freeze, "Gemfile".freeze, "LICENSE".freeze, "README.md".freeze, "Rakefile".freeze, "bin/console".freeze, "bin/setup".freeze, "lib/redis/impending_cross_slot_error.rb".freeze, "lib/redis/key_hash.rb".freeze, "lib/redis/key_hash/version.rb".freeze, "redis-key_hash.gemspec".freeze] s.homepage = "https://github.com/ProsperWorks/redis-key_hash".freeze s.licenses = ["MIT".freeze] s.required_ruby_version = Gem::Requirement.new("~> 2.0".freeze) s.rubygems_version = "3.5.10".freeze s.summary = "Tests Redis Cluster key hash slot agreement".freeze s.specification_version = 4 s.add_development_dependency(%q.freeze, ["~> 1.14".freeze]) s.add_development_dependency(%q.freeze, ["~> 10.5".freeze]) s.add_development_dependency(%q.freeze, ["~> 5.10".freeze]) end