belated 0.6.2 → 0.6.3

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: 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