beetle 3.3.0 → 3.3.1

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
  SHA256:
3
- metadata.gz: 3e1e8a0378a54fd5b151e8a85fe404d74b06bc0e33458e632676bb5b60b7b38d
4
- data.tar.gz: 546a4383cdc3727eb9709ea6ef30647cfc647c803e5be9853b77b50b70c915c0
3
+ metadata.gz: 803a18e6acb9d08835042be267fab8251b59818aa8b6a6d1bccce49313ec6ff3
4
+ data.tar.gz: 10213d5296c892cfd195ae26804333a0289c4cabd5b455fa4fd17e9e63c2ee53
5
5
  SHA512:
6
- metadata.gz: d307e9c99eaafc64463e2fc5b21b3b9b4a04a831b3eb74d0330f86411412dc01f4f3e0a3e059695d5cfbd2b94b527352549fbaf4e5ebd4c8f28acdce79b25dcb
7
- data.tar.gz: a285335c8023bda35630fbe01162d5cd5e196fc60576c827f3f05e099d9f5c3e35608d7819d996de849c9f25e3619a33de90a2cca3704fab11636f3ec6645d0f
6
+ metadata.gz: 351ffe68580dbfadb2f71f3ff185b47371d6e7430a075dee294ba96c35198cb4dc61ee2aacd0085f531b819ae968815282dad6301647807b0019af1e9109a516
7
+ data.tar.gz: 450ebd9703761b25b7def68bd399788140cb05f11e2246589f4039d236a456e8773dd38fcf223c7e0b6477b0a2aca646e9818415c45f92f1e04d900879f21f5f
@@ -1,5 +1,10 @@
1
1
  = Release Notes
2
2
 
3
+ == Version 3.3.1
4
+ * It seems that there is a certain preference on connection level when
5
+ selecting the next message to process. We try to protect against
6
+ such bias by connecting in random order.
7
+
3
8
  == Version 3.3.0
4
9
  * protect against duplicate handler execution by keeping the status of
5
10
  handler exectution for both redundant and non-redundant messages in
@@ -43,6 +43,10 @@ module Beetle
43
43
  @servers.each { |s| set_current_server(s); yield }
44
44
  end
45
45
 
46
+ def each_server_sorted_randomly
47
+ @servers.sort_by{rand}.each { |s| set_current_server(s); yield }
48
+ end
49
+
46
50
  def exchanges
47
51
  @exchanges[@server] ||= {}
48
52
  end
@@ -34,7 +34,7 @@ module Beetle
34
34
  @listened_queues = queues
35
35
  @exchanges_for_queues = exchanges_for_queues(queues)
36
36
  EM.run do
37
- each_server do
37
+ each_server_sorted_randomly do
38
38
  connect_server connection_settings
39
39
  end
40
40
  yield if block_given?
@@ -1,3 +1,3 @@
1
1
  module Beetle
2
- VERSION = "3.3.0"
2
+ VERSION = "3.3.1"
3
3
  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: 3.3.0
4
+ version: 3.3.1
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: 2019-07-18 00:00:00.000000000 Z
15
+ date: 2019-08-07 00:00:00.000000000 Z
16
16
  dependencies:
17
17
  - !ruby/object:Gem::Dependency
18
18
  name: bunny