belated 0.6.2 → 0.6.3

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
  SHA256:
3
- metadata.gz: 422e1b6b1f3973315fb01e1e47b7a976d0ac1a62897c0d32880fd21a7dec8c92
4
- data.tar.gz: 3daed6a19c67909b50bb93c8b39ba729b43d33dbbd3a6966ed425249c6eec89f
3
+ metadata.gz: ae5f827cc80ba5fba59161a50ae5797ef774be28feeb478ea641dda6bca79b3a
4
+ data.tar.gz: 01a61d9a44ae2b76ad27827e58dd8ba81e2040753925dc7172458c04495f010a
5
5
  SHA512:
6
- metadata.gz: 489ee717aaf5a1cbdf26f134e4341894dd088d4ba067f9b0f16c9c64a8f4692252e98b4dfa21d0e45fe45ba8c8cbfda77118483758bc0649b031bf8d9049c785
7
- data.tar.gz: 811c5bc89bdbafaee6869a8f267e0c748ef5ca98ccc10edd65780e1a548205471ad881c879e12dc8e6162331e7065d8afb4bd765c96c694de8748600854f6feb
6
+ metadata.gz: 73a7fe76eacd1334186ef70628a78f193a20a72373d4faaa6bc9b8688ff0d9786156a69b44c3dfb9405837f0f5d980d1317277ad87c33d239d5d8c13b73207a4
7
+ data.tar.gz: bcc797637c63a712e81b77189ecd93c325a67fb67f91b392a86d8231b685394341447539c12012280fee392a52a71a6fb20713fdb0ae0be32201c2b2670f5a33
data/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  ## [Unreleased]
2
2
 
3
+ ## [0.6.3] - 2021-08-21
4
+
5
+ - Needed to have the hash inside the mutex when going over it; otherwise you still the get can't add key into hash during iteration error. Of course.
6
+
3
7
  ## [0.6.2] - 2021-08-20
4
8
 
5
9
  - Use a mutex for the proc_table used by the client. Fixes
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- belated (0.6.2)
4
+ belated (0.6.3)
5
5
  drb
6
6
  dry-configurable
7
7
  sorted_set
@@ -37,15 +37,18 @@ class Belated
37
37
  def start_banker_thread
38
38
  self.banker_thread = Thread.new do
39
39
  loop do
40
- delete_from_table
40
+ delete_from_table if proc_table.length > 20
41
41
  if bank.empty?
42
42
  sleep 10
43
43
  next
44
44
  end
45
- begin
46
- queue.push(wrapper = bank.pop)
47
- rescue DRb::DRbConnError
48
- bank.push(wrapper)
45
+ until bank.empty?
46
+ begin
47
+ queue.push(wrapper = bank.pop)
48
+ rescue DRb::DRbConnError
49
+ bank.push(wrapper)
50
+ sleep 5
51
+ end
49
52
  end
50
53
  end
51
54
  end
@@ -54,8 +57,8 @@ class Belated
54
57
  def delete_from_table
55
58
  return if proc_table.empty?
56
59
 
57
- proc_table.select { |_k, v| v.completed }.each do |key, _value|
58
- @mutex.synchronize do
60
+ @mutex.synchronize do
61
+ proc_table.select { |_k, v| v.completed }.each do |key, _value|
59
62
  proc_table.delete(key)
60
63
  end
61
64
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  class Belated
4
- VERSION = '0.6.2'
4
+ VERSION = '0.6.3'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: belated
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.2
4
+ version: 0.6.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sampo Kuokkanen
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-08-20 00:00:00.000000000 Z
11
+ date: 2021-08-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: drb