radiator 0.3.0rc1 → 0.3.0rc2

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: adccc7e93bc7d0aa80013b5155564e5e1cad6f9e
4
- data.tar.gz: 3d2e9bbd91be99f07546fb7943c4c85223f2a1ce
3
+ metadata.gz: 3a9cc38d3e3df7d3f679c9f8f21b1152f57ed8a1
4
+ data.tar.gz: 1ed7f95401707f9efe4c3629d2ff82686bd01993
5
5
  SHA512:
6
- metadata.gz: 9fd6c239cde0594f9bbb29a855fde1ca28a1f9bf5e18329daf506654ee4f563320e86818552ceba6bde33a468ef2270872dc257fe8d45ca9ad1ea267c8bf1718
7
- data.tar.gz: 6e21d95073a1085c55e9a895815af694f62e982f0d2d70087d65383df3c6dcc7571741d4b662ab1ec2329176e03792e30fbc575636614ee92a5b35d7ed6973ef
6
+ metadata.gz: af6f9e18109c75c75dcceef3c95e8ffedbb780ceddf97b8a1bf1eb51a5240603077f27aa8e87c390d4ed178cd81e1e5f69ecd1bbb109cac08eee1d18ecfa3c92
7
+ data.tar.gz: 760c898112ac4e509f62b0f4f37b3c286d8613d304d9d6baa9ec496d948bd962c23e7f89c85138729f7153a295e78e2a4b23b9a57d8b568df429c97d4e26610a
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- radiator (0.3.0rc1)
4
+ radiator (0.3.0rc2)
5
5
  bitcoin-ruby (= 0.0.11)
6
6
  ffi (= 1.9.18)
7
7
  hashie (~> 3.5, >= 3.5.5)
@@ -16,8 +16,6 @@ GEM
16
16
  public_suffix (>= 2.0.2, < 4.0)
17
17
  awesome_print (1.8.0)
18
18
  bitcoin-ruby (0.0.11)
19
- codeclimate-test-reporter (1.0.5)
20
- simplecov
21
19
  coderay (1.1.2)
22
20
  crack (0.4.3)
23
21
  safe_yaml (~> 1.0.0)
@@ -67,7 +65,6 @@ PLATFORMS
67
65
  DEPENDENCIES
68
66
  awesome_print (~> 1.7, >= 1.7.0)
69
67
  bundler (~> 1.15, >= 1.15.4)
70
- codeclimate-test-reporter (~> 1.0, >= 1.0.5)
71
68
  faraday (~> 0.9.2)
72
69
  minitest (~> 5.9, >= 5.9.0)
73
70
  minitest-line (~> 0.6.3)
data/README.md CHANGED
@@ -421,6 +421,40 @@ There is another rare scenario involving `::Transaction` broadcasts that's handl
421
421
  tx = Radiator::Transaction.new(wif: wif, recover_transactions_on_error: false)
422
422
  ```
423
423
 
424
+ ## Troubleshooting
425
+
426
+ ## Problem: My log is full of `Unable to perform request ... retrying ...` messages.
427
+
428
+ ```
429
+ W, [2017-10-10T11:38:30.035318 #6743] WARN -- : database_api.get_dynamic_global_properties :: Unable to perform request: too many connection resets (due to Net::ReadTimeout - Net::ReadTimeout) after 0 requests on 26665356, last used 1507660710.035165 seconds ago :: cause: Net::ReadTimeout, retrying ...
430
+ ```
431
+
432
+ This is caused by network interruptions. If these messages happen once in a while, they can be ignored. Radiator will retry the request and move on. If there are more frequent warnings, this will trigger the failover logic and pick a new node, if one has been configured (which is true by default). See the Failover section above.
433
+
434
+ ## Problem: My log is full of `Invalid block sequence` messages.
435
+
436
+ ```
437
+ W, [2017-10-10T13:53:24.327177 #6938] WARN -- : Invalid block sequence at height: 16217674
438
+ ```
439
+
440
+ This is a similar situation to `Unable to perform request ... retrying ...`. Radiator::Stream will retry and failover if needed. It is happening because the node has responded with a block out of order and ::Stream is ignoring this block, then retrying.
441
+
442
+ ## Problem: What does the `Stream behind` error mean?
443
+
444
+ ```
445
+ W, [2017-10-09T17:15:59.164484 #6231] WARN -- : Stream behind by 6118 blocks (about 305.9 minutes).
446
+ ```
447
+
448
+ ## Solution:
449
+
450
+ This is an error produced by `::Stream` when it notices that the current block is falling too far behind the head block. One solution is to just restart the stream and see if it happens again. If you see a message like this occasionally, but otherwise the stream seems to keep up, it probably was able to recover on its own.
451
+
452
+ There can be several root causes. Resources like memory and CPU might be taxed. The network connection might be too slow for what you're doing. Remember, you're downloading each and every block, not just the operations you want.
453
+
454
+ If you have excluded system resources as the root cause, then you should take a look at your code. If you're doing anything that takes longer than 3 seconds per block, `::Stream` can fall behind. When this happens, `::Stream` will try to catch up without displaying a warning. But once you fall 400 blocks behind (~20 minutes), you'll start to get the warning messages.
455
+
456
+ Verify your code is not doing too much between blocks.
457
+
424
458
  ## Tests
425
459
 
426
460
  * Clone the client repository into a directory of your choice:
@@ -311,6 +311,7 @@ module Radiator
311
311
  # Stops the persistant http connections.
312
312
  #
313
313
  def shutdown
314
+ @uri = nil
314
315
  @http_id = nil
315
316
  @http.shutdown if !!@http && defined?(@http.shutdown)
316
317
  @http = nil
@@ -1,3 +1,3 @@
1
1
  module Radiator
2
- VERSION = '0.3.0rc1'
2
+ VERSION = '0.3.0rc2'
3
3
  end
@@ -23,7 +23,6 @@ Gem::Specification.new do |spec|
23
23
  spec.add_development_dependency 'minitest-line', '~> 0.6.3'
24
24
  spec.add_development_dependency 'webmock', '~> 3.1', '>= 3.1.0'
25
25
  spec.add_development_dependency 'simplecov', '~> 0.15.1'
26
- spec.add_development_dependency 'codeclimate-test-reporter', '~> 1.0', '>= 1.0.5'
27
26
  spec.add_development_dependency 'vcr', '~> 3.0', '>= 3.0.3'
28
27
  spec.add_development_dependency 'faraday', '~> 0.9.2'
29
28
  spec.add_development_dependency 'typhoeus', '~> 1.0', '>= 1.0.2'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: radiator
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0rc1
4
+ version: 0.3.0rc2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Anthony Martin
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-10-10 00:00:00.000000000 Z
11
+ date: 2017-10-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -118,26 +118,6 @@ dependencies:
118
118
  - - "~>"
119
119
  - !ruby/object:Gem::Version
120
120
  version: 0.15.1
121
- - !ruby/object:Gem::Dependency
122
- name: codeclimate-test-reporter
123
- requirement: !ruby/object:Gem::Requirement
124
- requirements:
125
- - - "~>"
126
- - !ruby/object:Gem::Version
127
- version: '1.0'
128
- - - ">="
129
- - !ruby/object:Gem::Version
130
- version: 1.0.5
131
- type: :development
132
- prerelease: false
133
- version_requirements: !ruby/object:Gem::Requirement
134
- requirements:
135
- - - "~>"
136
- - !ruby/object:Gem::Version
137
- version: '1.0'
138
- - - ">="
139
- - !ruby/object:Gem::Version
140
- version: 1.0.5
141
121
  - !ruby/object:Gem::Dependency
142
122
  name: vcr
143
123
  requirement: !ruby/object:Gem::Requirement