uaktags / explorer

An open source block explorer
BSD 3-Clause "New" or "Revised" License
6 stars 8 forks source link

Cannot read property 'length' of undefined #18

Closed vrfebet closed 5 years ago

vrfebet commented 5 years ago

I started a new sync on the second server and here are the error logs I spoke about. After the last error, the sync stops. I waited for about 30 minutes. http://coalmine.eu/log-node.txt http://coalmine.eu/sync-log.txt I found a very similar error here https://github.com/janoside/btc-rpc-explorer/issues/49

uaktags commented 5 years ago

What's the latest commit this is using? This shouldn't be doing any /api calls? The work queue depth is an issue with your coin's daemon and not with the explorer. The bitcoin rpc documentation has rpcworkqueue= as a for instance. Basically your node is being hit harder than it can handle in its config.

Not seeing an actual error with the explorer, closing as a configuration issue for the daemon.

uaktags commented 5 years ago

I'd also recommend against using remotely hosted files as log evidence. Domain ownership can change drastically, leaving issues like these not easily to reference in the future.

vrfebet commented 5 years ago

So, I know you are withdrawing from the project, but I have to mention that I eliminated error 500

{ RpcError: Internal Server Error
    at Client.rpc (/root/explorer2/node_modules/bitcoin-core/dist/src/parser.js:73:13)
    at Client.tryCatcher (/root/explorer2/node_modules/bluebird/js/release/util.js:16:23)
    at Promise._settlePromiseFromHandler (/root/explorer2/node_modules/bluebird/js/release/promise.js:512:31)
    at Promise._settlePromise (/root/explorer2/node_modules/bluebird/js/release/promise.js:569:18)
    at Promise._settlePromise0 (/root/explorer2/node_modules/bluebird/js/release/promise.js:614:10)
    at Promise._settlePromises (/root/explorer2/node_modules/bluebird/js/release/promise.js:694:18)
    at Promise._fulfill (/root/explorer2/node_modules/bluebird/js/release/promise.js:638:18)
    at Request._callback (/root/explorer2/node_modules/bluebird/js/release/nodeback.js:45:21)
    at Request.self.callback (/root/explorer2/node_modules/request/request.js:185:22)
    at emitTwo (events.js:131:20)
    at Request.emit (events.js:214:7)
    at Request.<anonymous> (/root/explorer2/node_modules/request/request.js:1161:10)
    at emitOne (events.js:116:13)
    at Request.emit (events.js:211:7)
    at IncomingMessage.<anonymous> (/root/explorer2/node_modules/request/request.js:1083:12)
    at Object.onceWrapper (events.js:313:30)
    at emitNone (events.js:111:20)
    at IncomingMessage.emit (events.js:208:7)
    at endReadableNT (_stream_readable.js:1064:12)
    at _combinedTickCallback (internal/process/next_tick.js:139:11)
    at process._tickCallback (internal/process/next_tick.js:181:9)
  message: 'Internal Server Error',
  body: 'Work queue depth exceeded',
  code: 500,
  name: 'RpcError' }

on any, or exceptional ... by increasing the core request in coin.conf: rpcworkqueue = 1000 four CPU cores have been running for an hour without error. (note - that core runs on a separate server and loads cpu over 50%)

uaktags commented 5 years ago

I'm not withdrawing from the project? And yep, rpcworkqueue is how to increase the workqueue which is why it's a coin specific thing. The coin probably has a lower set default than the original coin they forked (btc-core). That's why there's no issue to be fixed in the explorer.