redis_cluster 0.2.5 → 0.2.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c9a79e5199ba886dea0dc231b20a06ece72fb09a
4
- data.tar.gz: 8a7b71c4f03ff482dd899d0586944005c705e88d
3
+ metadata.gz: 80d0d898c697524df7d413d0d776be6db761cf32
4
+ data.tar.gz: 8d2c6b914846787fb0431e7b8eb95b0e416ddd02
5
5
  SHA512:
6
- metadata.gz: 9668f353a6a3d21e983264cbb5399d7238782e56459d78b6a19d73e3f66a41b3baf16a34db25e69c32ef0dcd30cd7189be3d199263110e491476a728b5fcd1cd
7
- data.tar.gz: e46a80a0e804ffc14541bf6cc5675acfad5611d92764fd6e02f5ff2ca877a88d51b5f5a08941f9c2630769a9cb1a2f24ab635b0f2b70ca8385c1e1fb129edb98
6
+ metadata.gz: b27296df54145f1c0049c8988492c08a6a5c4d31769aeeeae56f0092d59fa8b8ce8c9f4aa438b98a695d13a9f3e19b2623109020bed0cb90eb52180639a98dbf
7
+ data.tar.gz: a2c3433086109b5c71638ef4630a006bdbf45461a6f3511edaf02e425c2b613cbadee71dcf1a699a90310aeb198464a9918ebead0dcaf777adfc19f3ba16e8a4
data/.rspec ADDED
@@ -0,0 +1,3 @@
1
+ --color
2
+ --require spec_helper
3
+ -f d
data/README.md CHANGED
@@ -2,6 +2,8 @@
2
2
 
3
3
  ![travis ci](https://travis-ci.org/zhchsf/redis_cluster.svg?branch=master)
4
4
 
5
+ First see: [https://redis.io/topics/cluster-tutorial](https://redis.io/topics/cluster-tutorial)
6
+
5
7
  RedisCluster for ruby is rewrited from [https://github.com/antirez/redis-rb-cluster](https://github.com/antirez/redis-rb-cluster)
6
8
 
7
9
  Now is developing, only support single node methods, and not use in any production environments.
@@ -25,7 +27,7 @@ Or install it yourself as:
25
27
 
26
28
  ## Usage
27
29
 
28
- Doing!
30
+ First you need to configure redis cluster with some nodes! Please see: [https://redis.io/topics/cluster-tutorial](https://redis.io/topics/cluster-tutorial)
29
31
 
30
32
  ```ruby
31
33
  hosts = [{host: '127.0.0.1', port: 7000}, {host: '127.0.0.1', port: 7001}] # don't need all, gem can auto detect all nodes, and process failover if some master nodes down
@@ -8,7 +8,7 @@ module RedisCluster
8
8
  @startup_hosts = startup_hosts
9
9
  @pool = Pool.new
10
10
  @mutex = Mutex.new
11
- reload_pool_nodes
11
+ reload_pool_nodes(true)
12
12
  end
13
13
 
14
14
  def execute(method, args, &block)
@@ -49,7 +49,7 @@ module RedisCluster
49
49
 
50
50
  private
51
51
 
52
- def reload_pool_nodes
52
+ def reload_pool_nodes(raise_error = false)
53
53
  @mutex.synchronize do
54
54
  @startup_hosts.each do |options|
55
55
  begin
@@ -60,6 +60,9 @@ module RedisCluster
60
60
  slots_ranges = infos.map {|x| x[0]..x[1] }
61
61
  @pool.add_node!({host: host[0], port: host[1]}, slots_ranges)
62
62
  end
63
+ rescue Redis::CommandError => e
64
+ raise e if raise_error && e.message =~ /cluster\ support\ disabled$/
65
+ next
63
66
  rescue
64
67
  next
65
68
  end
@@ -1,3 +1,3 @@
1
1
  module RedisCluster
2
- VERSION = "0.2.5"
2
+ VERSION = "0.2.6"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: redis_cluster
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.5
4
+ version: 0.2.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - wangzc
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-12-11 00:00:00.000000000 Z
11
+ date: 2016-12-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: redis
@@ -102,6 +102,7 @@ extensions: []
102
102
  extra_rdoc_files: []
103
103
  files:
104
104
  - ".gitignore"
105
+ - ".rspec"
105
106
  - ".travis.yml"
106
107
  - CODE_OF_CONDUCT.md
107
108
  - Gemfile