beetle 0.4.4 → 0.4.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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