hit this today
mafintosh opened this issue · comments
/home/ubuntu/hypermirror/node_modules/hypercore/lib/replicator.js:443
this.upgrading.resolve()
^
TypeError: Cannot read property 'resolve' of null
at RequestPool._onupgrade (/home/ubuntu/hypermirror/node_modules/hypercore/lib/replicator.js:443:20)
at async Replicator.ondata (/home/ubuntu/hypermirror/node_modules/hypercore/lib/replicator.js:805:7)
this.upgrading
is null unless one of two specific lines are run. There are lines 319 and 379.
319 is inside the function _updateUpgrade
. I think the error might be in 379. The two lines above it have the comment:
// TODO: if the peer fails, we need to resolve the promise as well woop woop
// so we need some tracking mechanics for upgrades in general.
My guess is something went wrong with
- The
UpgradeLock
constructor. But I can't really think of a way a constructor so simple my run into an error and returnnull
. - The conditions to set
this.upgrading
, which are in lines 318 and 362-390 (a lot of TODO notes in that area).
Is there a way to replicate the error?