Skip to content
This repository has been archived by the owner on Apr 5, 2021. It is now read-only.

Unable to find nodes #189

Closed
marcosrachid opened this issue Nov 23, 2018 · 5 comments
Closed

Unable to find nodes #189

marcosrachid opened this issue Nov 23, 2018 · 5 comments

Comments

@marcosrachid
Copy link

marcosrachid commented Nov 23, 2018

Context (Environment)

  • neo-js Version: 0.11.0
  • node Version: v8.7.0
  • Operation System: Ubuntu 16.04
  • MongoDB Version (if applicable): v3.6.3-rc1

Expected behavior

Neo Mesh should find an applicable node and sync the missing blocks.

Actual behavior

I based this project on rockacola's examples and neo-js configurations but it keeps me returning these messages:

Mesh info: Unable to find a suitable node to perform benchmark.
2018-11-23 10:05:46.769 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: https://seed4.switcheo.network:10331 Message: Request failed with status code 503
neo.mesh is ready.
Blockchain Height: 2998189
No sync progress yet
2018-11-23 10:05:51.165 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: https://seed5.switcheo.network:10331 Message: Request failed with status code 503
No sync progress yet
2018-11-23 10:05:55.262 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: https://seed6.cityofzion.io:443 Message: write EPROTO 140680443647808:error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure:../deps/openssl/openssl/ssl/s23_clnt.c:772:

2018-11-23 10:05:55.286 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: https://seed7.cityofzion.io:443 Message: write EPROTO 140680443647808:error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure:../deps/openssl/openssl/ssl/s23_clnt.c:772:

2018-11-23 10:05:56.490 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: https://seed1.switcheo.network:10331 Message: Request failed with status code 504
No sync progress yet
2018-11-23 10:06:00.794 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://node1.ams2.bridgeprotocol.io Message: connect ECONNREFUSED 198.211.127.188:80
2018-11-23 10:06:01.407 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: https://seed9.cityofzion.io:443 Message: write EPROTO 140680443647808:error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure:../deps/openssl/openssl/ssl/s23_clnt.c:772:

2018-11-23 10:06:01.409 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: https://seed0.cityofzion.io:443 Message: write EPROTO 140680443647808:error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure:../deps/openssl/openssl/ssl/s23_clnt.c:772:

2018-11-23 10:06:01.410 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: https://seed8.cityofzion.io:443 Message: write EPROTO 140680443647808:error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure:../deps/openssl/openssl/ssl/s23_clnt.c:772:

No sync progress yet
2018-11-23 10:06:05.050 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://node1.nyc3.bridgeprotocol.io Message: connect ECONNREFUSED 165.227.186.72:80
2018-11-23 10:06:05.085 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://node2.nyc3.bridgeprotocol.io Message: connect ECONNREFUSED 159.65.244.191:80
2018-11-23 10:06:05.134 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://node2.ams2.bridgeprotocol.io Message: connect ECONNREFUSED 37.139.22.119:80
2018-11-23 10:06:05.356 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://node1.sgp1.bridgeprotocol.io Message: connect ECONNREFUSED 206.189.94.221:80

SYNCER REPORT:

blockWritePointer: 0
storeQueue length: 0
2018-11-23 10:06:09.385 Mesh info: node.getVersion() failed, but to continue. Endpoint: https://seed1.switcheo.network:10331 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.385 Mesh info: node.getVersion() failed, but to continue. Endpoint: https://seed2.switcheo.network:10331 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.385 Mesh info: node.getVersion() failed, but to continue. Endpoint: https://seed3.switcheo.network:10331 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.385 Mesh info: node.getVersion() failed, but to continue. Endpoint: https://seed4.switcheo.network:10331 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.385 Mesh info: node.getVersion() failed, but to continue. Endpoint: https://seed5.switcheo.network:10331 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.385 Mesh info: node.getVersion() failed, but to continue. Endpoint: https://seed1.cityofzion.io:443 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.386 Mesh info: node.getVersion() failed, but to continue. Endpoint: https://seed2.cityofzion.io:443 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.386 Mesh info: node.getVersion() failed, but to continue. Endpoint: https://seed3.cityofzion.io:443 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.386 Mesh info: node.getVersion() failed, but to continue. Endpoint: https://seed4.cityofzion.io:443 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.386 Mesh info: node.getVersion() failed, but to continue. Endpoint: https://seed5.cityofzion.io:443 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.386 Mesh info: node.getVersion() failed, but to continue. Endpoint: https://seed6.cityofzion.io:443 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.386 Mesh info: node.getVersion() failed, but to continue. Endpoint: https://seed7.cityofzion.io:443 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.386 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://node2.sgp1.bridgeprotocol.io Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.386 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: https://seed1.redpulse.com:443 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.386 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: https://seed2.redpulse.com:443 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.386 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://seed1.aphelion-neo.com:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.387 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://seed2.aphelion-neo.com:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.387 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://seed3.aphelion-neo.com:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.387 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://seed4.aphelion-neo.com:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.387 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://seed1.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.387 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://seed2.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.387 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://seed3.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.387 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://seed4.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.387 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://seed5.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.387 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://seed6.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.388 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://seed7.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.388 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://seed8.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.388 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://seed9.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.388 Mesh info: node.getBlockCount() failed, but to continue. Endpoint: http://seed10.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.392 Mesh info: node.getVersion() failed, but to continue. Endpoint: https://seed8.cityofzion.io:443 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.392 Mesh info: node.getVersion() failed, but to continue. Endpoint: https://seed9.cityofzion.io:443 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.392 Mesh info: node.getVersion() failed, but to continue. Endpoint: https://seed0.cityofzion.io:443 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.392 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://node1.ams2.bridgeprotocol.io Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.392 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://node2.ams2.bridgeprotocol.io Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.392 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://node1.nyc3.bridgeprotocol.io Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.393 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://node2.nyc3.bridgeprotocol.io Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.393 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://node1.sgp1.bridgeprotocol.io Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.393 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://node2.sgp1.bridgeprotocol.io Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.393 Mesh info: node.getVersion() failed, but to continue. Endpoint: https://seed1.redpulse.com:443 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.393 Mesh info: node.getVersion() failed, but to continue. Endpoint: https://seed2.redpulse.com:443 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.393 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://seed1.aphelion-neo.com:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.393 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://seed2.aphelion-neo.com:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.393 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://seed3.aphelion-neo.com:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.393 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://seed4.aphelion-neo.com:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.393 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://seed1.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.393 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://seed2.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.393 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://seed3.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.393 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://seed4.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.393 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://seed5.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.393 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://seed6.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.393 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://seed7.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.393 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://seed8.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.394 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://seed9.ngd.network:10332 Message: timeout of 30000ms exceeded
2018-11-23 10:06:09.394 Mesh info: node.getVersion() failed, but to continue. Endpoint: http://seed10.ngd.network:10332 Message: timeout of 30000ms exceeded

Steps to reproduce the behavior

  1. git clone https://github.com/marcosrachid/nodejs-neo-fullnode
  2. npm install
  3. npm start
@rockacola
Copy link
Collaborator

I partly believe this may be an issue with the instance of node 8.7 making connection through HTTPS.

There was an existing issue in node >=8.6.0, <9.0.0 related to the said error message: write EPROTO 140680443647808:error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake :

Can you try new version (say, 10.13.0) of node to see if the issue persists?


Alternatively, we can also test isolate protocol by explicitly provide only HTTP endpoints to see if the issue persists:

const neo = new Neo({
  endpoints: [
    { endpoint: 'http://seed1.ngd.network:10332' },
    { endpoint: 'http://seed2.ngd.network:10332' },
    { endpoint: 'http://seed3.ngd.network:10332' },
    { endpoint: 'http://seed4.ngd.network:10332' },
    { endpoint: 'http://seed5.ngd.network:10332' },
    { endpoint: 'http://seed6.ngd.network:10332' },
    { endpoint: 'http://seed7.ngd.network:10332' },
    { endpoint: 'http://seed8.ngd.network:10332' },
    { endpoint: 'http://seed9.ngd.network:10332' },
    { endpoint: 'http://seed10.ngd.network:10332' },
  ]
})

@rockacola
Copy link
Collaborator

Another point worth mention, the log verbose levels as seen in https://github.com/marcosrachid/nodejs-neo-fullnode/blob/master/index.js is considerably noisy.

There are bound to have node connectivity failures for various of server side reasons (most common one is: connect ECONNREFUSED 159.65.244.191:80). If it's not for debugging purpose, you can change the log level from info to warn.

I cloned the repo https://github.com/marcosrachid/nodejs-neo-fullnode/, modify all log levels to warn and following are the output I see after running for 1 minute:

> nodejs-neo-fullnode@0.1.0 start /Users/travis/ProjectGit/marcosrachid/nodejs-neo-fullnode
> node .

== Sync Mainnet ==
neo.storage is ready.
Highest Count in Storage: 1449
neo.mesh is ready.
Blockchain Height: 3005723
No sync progress yet
[00:07:45] 1748/3005724 | complete: 0.0582% | 1752 blocks/min (ETA in a day) | failure: 0% | missing: N/A | excessive: N/A
[00:07:50] 2075/3005725 | complete: 0.069% | 2484 blocks/min (ETA in 20 hours) | failure: 0% | missing: N/A | excessive: N/A
[00:07:55] 2389/3005725 | complete: 0.0795% | 2798 blocks/min (ETA in 18 hours) | failure: 0% | missing: N/A | excessive: N/A
[00:08:00] 2726/3005725 | complete: 0.0907% | 3040 blocks/min (ETA in 16 hours) | failure: 0% | missing: N/A | excessive: N/A
## SYNCER REPORT:
> blockWritePointer: 3765
> storeQueue length: 688
[00:08:05] 3052/3005725 | complete: 0.1015% | 3196 blocks/min (ETA in 16 hours) | failure: 0% | missing: N/A | excessive: N/A
[00:08:10] 3353/3005725 | complete: 0.1116% | 3248 blocks/min (ETA in 15 hours) | failure: 0% | missing: N/A | excessive: N/A
[00:08:15] 3616/3005725 | complete: 0.1203% | 3243 blocks/min (ETA in 15 hours) | failure: 0% | missing: N/A | excessive: N/A
[00:08:20] 3882/3005725 | complete: 0.1292% | 3229 blocks/min (ETA in 15 hours) | failure: 0% | missing: N/A | excessive: N/A
[00:08:25] 4171/3005725 | complete: 0.1388% | 3255 blocks/min (ETA in 15 hours) | failure: 0% | missing: N/A | excessive: N/A
[00:08:30] 4461/3005726 | complete: 0.1484% | 3279 blocks/min (ETA in 15 hours) | failure: 0% | missing: N/A | excessive: N/A
## SYNCER REPORT:
> blockWritePointer: 5500
> storeQueue length: 718
## NODES REPORT:
> pending: 6 | latency: 496| height: 3005706 | UA: /Neo:2.9.0/ | http://seed1.ngd.network:10332
> pending: 6 | latency: 302| height: 2995341 | UA: /Neo:2.9.0/ | http://seed3.ngd.network:10332
> pending: 5 | latency: 366| height: 2995341 | UA: /Neo:2.9.0/ | http://seed4.ngd.network:10332
> pending: 6 | latency: 481| height: 3005724 | UA: /Neo:2.9.0/ | http://seed6.ngd.network:10332
> pending: 6 | latency: 464| height: 3005725 | UA: /Neo:2.9.0/ | http://seed7.ngd.network:10332
[00:08:35] 4755/3005726 | complete: 0.1582% | 3303 blocks/min (ETA in 15 hours) | failure: 0% | missing: N/A | excessive: N/A
! Updated missing block count: 755
! Updated excessive block count: 0
[00:08:40] 4280/3005726 | complete: 0.1424% | 3325 blocks/min (ETA in 15 hours) | failure: 0.4146% | missing: 14.995% | excessive: 0%
[00:08:45] 4575/3005726 | complete: 0.1522% | 3339 blocks/min (ETA in 15 hours) | failure: 0.3835% | missing: 14.1651% | excessive: 0%
[00:08:50] 4814/3005727 | complete: 0.1602% | 3314 blocks/min (ETA in 15 hours) | failure: 15.2414% | missing: 13.5572% | excessive: 0%
[00:08:55] 5051/3005727 | complete: 0.168% | 3281 blocks/min (ETA in 15 hours) | failure: 25.2137% | missing: 13.0038% | excessive: 0%
[00:09:00] 5274/3005727 | complete: 0.1755% | 3248 blocks/min (ETA in 15 hours) | failure: 32.3931% | missing: 12.5228% | excessive: 0%

My environment:

  • macOS 10.12.6
  • node 10.10.0
  • MongodB 3.4.9

@marcosrachid
Copy link
Author

marcosrachid commented Nov 26, 2018

I tried to upgrade my node.js, but nothing has changed.

And also tried to change my internet bandwidth, but still same errors. I will try testing on another computer and give you a feedback.

@marcosrachid
Copy link
Author

On a windows environment with a better bandwidth, it works with success. What OS are you running your instance ?

@marcosrachid
Copy link
Author

Oh sorr. I just saw you already answered my question. So I think my problem was just a slow internet. Thanks @rockacola.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants