beetle 0.4.4 → 0.4.5

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: ce5804b3e44afd72e9f650d3599d9a57ed4cc4b5
4
- data.tar.gz: f3ea8613d41b1a28f6ed89af6b85cffc7502cb02
3
+ metadata.gz: 9f405a0852e21f9fdfdcd51e960295b57b4d8d1e
4
+ data.tar.gz: a5629866029fc7faab95362442c0256d3342630b
5
5
  SHA512:
6
- metadata.gz: 3615e631ca7dc4a2dfe90f5fa04425237e5c2148eb567b881f086eb467d4f605cc52bec4c3d2969abeb93c641bc2e15a8eb56548895227d7e19ff4ef16943fbc
7
- data.tar.gz: c718fccb2c910adb9f5cedf698ca1f0396d9d8b96971eb5ed5853c66da384a6b4eab9aa1e0b1d0f5f9a54a2697132df4c812d565bc9c44b531e0d34811af21b7
6
+ metadata.gz: e751112c09982ef6dce8a0dc8c8c8d7ff5854071bab42c311bdb1d86303248bd9ee2786f4e810d2433a4b1544744cf074a18bec034a551fa3b0b15bff92ef587
7
+ data.tar.gz: a1acda41c4afe1fe352c4ea7fc0c43274a884355b1640b741e467c6e75ecc45f68dc30a19a1ca401f0917dd3f87077fab77df4507135d8d32580e5d80019a3d2
@@ -65,7 +65,7 @@ all other redis servers into slaves of the current master.
65
65
 
66
66
  * on startup, an RCC can consult its redis master file to determine the current master without the help of the RCS by checking that it's still a master (or wait for the periodic reconfigure message with the current master from the RCS)
67
67
  * when the RCS finds the master to be down, it will retry a couple of times before starting a reconfiguration round
68
- * the RCS sends all RCCs a "ping" message to check if every client is there and able to to answer
68
+ * the RCS sends all RCCs a "ping" message to check if every client is there and able to answer
69
69
  * the RCCs acknowledge via a "pong" message if they can confirm the current master to be unavailable
70
70
  * the RCS waits for *all* RCCs to reply via pong
71
71
  * the RCS tells all RCCs to stop using the master by sending an "invalidate" message
data/RELEASE_NOTES.rdoc CHANGED
@@ -1,12 +1,20 @@
1
1
  = Release Notes
2
2
 
3
+ == Version 0.4.5
4
+
5
+ * Starting mutliple redis failover clients is now prohibited by
6
+ defualt. This behavior can be overriden using
7
+ "beetle configuration_client start -- --multiple"
8
+
3
9
  == Version 0.4.4
10
+
4
11
  * added command to show beetle version: "beetle --version"
5
12
  * configuration server tracks ids of unknown clients
6
13
  * configuration clients now sends heartbeats
7
14
  * configuration server tracks last seen times of clients, based on heartbeat
8
15
 
9
16
  == Version 0.4.3
17
+
10
18
  * fixed a race condition which could lead to duplicate message processing
11
19
  * fixed eventmachine shutdown sequence problem, which led to ACKs
12
20
  occasionally being lost due to writing to a closed socket, which in
@@ -36,7 +36,7 @@ module TestDaemons
36
36
  def daemon_controller
37
37
  @daemon_controller ||= DaemonController.new(
38
38
  :identifier => "Redis configuration test client #{@name}",
39
- :start_command => "ruby bin/beetle configuration_client start -- -v --redis-master-file #{redis_master_file} --id #{@name} --pid-dir #{tmp_path} --amqp-servers 127.0.0.1:5672",
39
+ :start_command => "ruby bin/beetle configuration_client start -- -v --multiple --redis-master-file #{redis_master_file} --id #{@name} --pid-dir #{tmp_path} --amqp-servers 127.0.0.1:5672",
40
40
  :ping_command => lambda{ true },
41
41
  :pid_file => pid_file,
42
42
  :log_file => log_file,
@@ -14,6 +14,7 @@ module Beetle
14
14
  # --amqp-servers LIST AMQP server list (e.g. 192.168.0.1:5672,192.168.0.2:5672)
15
15
  # --config-file PATH Path to an external yaml config file
16
16
  # --pid-dir DIR Write pid and log to DIR
17
+ # --multiple Allow multiple clients started in parallel (for testing only)
17
18
  # -v, --verbose Set log level to DEBUG
18
19
  # -h, --help Show this message
19
20
  #
@@ -51,6 +52,11 @@ module Beetle
51
52
  dir = val
52
53
  end
53
54
 
55
+ multiple = false
56
+ opts.on("--multiple", "Allow multiple clients") do |val|
57
+ multiple = true
58
+ end
59
+
54
60
  opts.on("-v", "--verbose", "Set log level to DEBUG") do |val|
55
61
  Beetle.config.logger.level = Logger::DEBUG
56
62
  end
@@ -62,7 +68,7 @@ module Beetle
62
68
 
63
69
  opts.parse!(app_options)
64
70
 
65
- Daemons.run_proc("redis_configuration_client", :multiple => true, :log_output => true, :dir_mode => dir_mode, :dir => dir) do
71
+ Daemons.run_proc("redis_configuration_client", :multiple => multiple, :log_output => true, :dir_mode => dir_mode, :dir => dir) do
66
72
  client = Beetle::RedisConfigurationClient.new
67
73
  client.id = client_id if client_id
68
74
  client.start
@@ -1,3 +1,3 @@
1
1
  module Beetle
2
- VERSION = "0.4.4"
2
+ VERSION = "0.4.5"
3
3
  end
@@ -20,7 +20,7 @@ module Beetle
20
20
  @client.stubs(:clear_redis_master_file)
21
21
  @client.beetle.expects(:publish).with(:client_started, {:id => @client.id}.to_json)
22
22
  @client.beetle.expects(:listen).yields
23
- EventMachine.expects(:add_periodic_timer).with(60).yields
23
+ EventMachine.expects(:add_periodic_timer).with(Beetle.config.redis_failover_client_heartbeat_interval).yields
24
24
  @client.beetle.expects(:publish).with(:heartbeat, {:id => @client.id}.to_json)
25
25
  @client.start
26
26
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: beetle
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.4
4
+ version: 0.4.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stefan Kaes
@@ -12,7 +12,7 @@ authors:
12
12
  autorequire:
13
13
  bindir: bin
14
14
  cert_chain: []
15
- date: 2016-03-04 00:00:00.000000000 Z
15
+ date: 2016-05-26 00:00:00.000000000 Z
16
16
  dependencies:
17
17
  - !ruby/object:Gem::Dependency
18
18
  name: uuid4r