decentraland / bronzeage-node

DEPRECATED: This codebase will not be mantained anymore, and formats are going to change when we move to the Decentraland Iron Age
https://decentraland.org
Other
104 stars 22 forks source link

Consistent `Number exceeds 2^53-1` errors on Windows #71

Open ghost opened 7 years ago

ghost commented 7 years ago

A fresh install of the latest d5e87de0433e2a3656ebcbec3f737fa40b13173b on Windows quickly crashes with several Number exceeds 2^53-1 errors. Apparently not a single block is parsed successfully. The same behavior shows for every run.

Similar to #26 but shows whether miner is active or not.

Pasting the observed output here:

$ bin\start.bat
[info] Chain is loading.
[info] Content server listening on port 9301
[info] Opening ChainDB...
[info] Chain is loading.
[info] Opening ChainDB...
[debug] AssertionError [ERR_ASSERTION]: Number exceeds 2^53-1
    at Object._read64 (I:\Decentraland\bronzeage-node\lib\utils\encoding.js:153:5)
    at Object.read64 (I:\Decentraland\bronzeage-node\lib\utils\encoding.js:175:19)
    at BufferReader.read64 (I:\Decentraland\bronzeage-node\lib\utils\reader.js:332:18)
    at Output.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\output.js:259:15)
    at Function.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\output.js:282:23)
    at TX.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\tx.js:2158:30)
    at Function.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\tx.js:2121:19)
    at Block.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\block.js:753:13)
    at Block.fromRaw (I:\Decentraland\bronzeage-node\lib\primitives\block.js:774:15)
    at Function.fromRaw (I:\Decentraland\bronzeage-node\lib\primitives\block.js:798:22)
[error] Number exceeds 2^53-1
[error] Number exceeds 2^53-1
{ AssertionError [ERR_ASSERTION]: Number exceeds 2^53-1
    at Object._read64 (I:\Decentraland\bronzeage-node\lib\utils\encoding.js:153:5)
    at Object.read64 (I:\Decentraland\bronzeage-node\lib\utils\encoding.js:175:19)
    at BufferReader.read64 (I:\Decentraland\bronzeage-node\lib\utils\reader.js:332:18)
    at Output.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\output.js:259:15)
    at Function.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\output.js:282:23)
    at TX.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\tx.js:2158:30)
    at Function.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\tx.js:2121:19)
    at Block.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\block.js:753:13)
    at Block.fromRaw (I:\Decentraland\bronzeage-node\lib\primitives\block.js:774:15)
    at Function.fromRaw (I:\Decentraland\bronzeage-node\lib\primitives\block.js:798:22)
  generatedMessage: false,
  name: 'AssertionError [ERR_ASSERTION]',
  code: 'ERR_ASSERTION',
  actual: false,
  expected: true,
  operator: '==' }
{ AssertionError [ERR_ASSERTION]: Number exceeds 2^53-1
    at Object._read64 (I:\Decentraland\bronzeage-node\lib\utils\encoding.js:153:5)
    at Object.read64 (I:\Decentraland\bronzeage-node\lib\utils\encoding.js:175:19)
    at BufferReader.read64 (I:\Decentraland\bronzeage-node\lib\utils\reader.js:332:18)
    at Output.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\output.js:259:15)
    at Function.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\output.js:282:23)
    at TX.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\tx.js:2158:30)
    at Function.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\tx.js:2121:19)
    at Block.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\block.js:753:13)
    at Block.fromRaw (I:\Decentraland\bronzeage-node\lib\primitives\block.js:774:15)
    at Function.fromRaw (I:\Decentraland\bronzeage-node\lib\primitives\block.js:798:22)
  generatedMessage: false,
  name: 'AssertionError [ERR_ASSERTION]',
  code: 'ERR_ASSERTION',
  actual: false,
  expected: true,
  operator: '==' }
[debug] AssertionError [ERR_ASSERTION]: Number exceeds 2^53-1
    at Object._read64 (I:\Decentraland\bronzeage-node\lib\utils\encoding.js:153:5)
    at Object.read64 (I:\Decentraland\bronzeage-node\lib\utils\encoding.js:175:19)
    at BufferReader.read64 (I:\Decentraland\bronzeage-node\lib\utils\reader.js:332:18)
    at Output.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\output.js:259:15)
    at Function.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\output.js:282:23)
    at TX.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\tx.js:2158:30)
    at Function.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\tx.js:2121:19)
    at Block.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\block.js:753:13)
    at Block.fromRaw (I:\Decentraland\bronzeage-node\lib\primitives\block.js:774:15)
    at Function.fromRaw (I:\Decentraland\bronzeage-node\lib\primitives\block.js:798:22)
[error] Number exceeds 2^53-1
^CTerminate batch job (Y/N)? y

$ 
ghost commented 7 years ago

An existing install of earlier code on the same Windows system runs fine.

ghost commented 7 years ago

A fresh install of the testnet v2 commit 3c987dab84245c38cbfc8118c76609e58ccda3e9 on the same Windows system runs fine. Something has changed since that commit.

ghost commented 7 years ago

A fresh install of the latest on a Linux system runs fine. Specific to Windows, or at least my Windows system.

ghost commented 7 years ago

The web interface is a significant change since the testnet v2 commit. Didn't really expect it to cause this error but tried just in case. Same behavior without the web interface running.

Dmitry1987 commented 7 years ago

Had same error, on Linux Ubuntu in VM on top windows 10:

Starting node
[info] Chain is loading.
[info] Checkpoints are enabled.
[info] Coin cache is enabled.
[info] Content server listening on port 9301
[info] Opening ChainDB...
[info] Chain is loading.
[info] Checkpoints are enabled.
[info] Coin cache is enabled.
[info] Opening ChainDB...
[error] Number exceeds 2^53-1
[error] Number exceeds 2^53-1
{ AssertionError [ERR_ASSERTION]: Number exceeds 2^53-1
    at Object._read64 (/root/DCL/bronzeage-node/lib/utils/encoding.js:153:5)
    at Object.read64 (/root/DCL/bronzeage-node/lib/utils/encoding.js:175:19)
    at BufferReader.read64 (/root/DCL/bronzeage-node/lib/utils/reader.js:332:18)
    at Output.fromReader (/root/DCL/bronzeage-node/lib/primitives/output.js:260:15)
    at Function.fromReader (/root/DCL/bronzeage-node/lib/primitives/output.js:283:23)
    at TX.fromReader (/root/DCL/bronzeage-node/lib/primitives/tx.js:2158:30)
    at Function.fromReader (/root/DCL/bronzeage-node/lib/primitives/tx.js:2121:19)
    at Block.fromReader (/root/DCL/bronzeage-node/lib/primitives/block.js:753:13)
    at Block.fromRaw (/root/DCL/bronzeage-node/lib/primitives/block.js:774:15)
    at Function.fromRaw (/root/DCL/bronzeage-node/lib/primitives/block.js:798:22)
  generatedMessage: false,
  name: 'AssertionError [ERR_ASSERTION]',
  code: 'ERR_ASSERTION',
  actual: false,
  expected: true,
  operator: '==' }
{ AssertionError [ERR_ASSERTION]: Number exceeds 2^53-1
    at Object._read64 (/root/DCL/bronzeage-node/lib/utils/encoding.js:153:5)
    at Object.read64 (/root/DCL/bronzeage-node/lib/utils/encoding.js:175:19)
    at BufferReader.read64 (/root/DCL/bronzeage-node/lib/utils/reader.js:332:18)
    at Output.fromReader (/root/DCL/bronzeage-node/lib/primitives/output.js:260:15)
    at Function.fromReader (/root/DCL/bronzeage-node/lib/primitives/output.js:283:23)
    at TX.fromReader (/root/DCL/bronzeage-node/lib/primitives/tx.js:2158:30)
    at Function.fromReader (/root/DCL/bronzeage-node/lib/primitives/tx.js:2121:19)
    at Block.fromReader (/root/DCL/bronzeage-node/lib/primitives/block.js:753:13)
    at Block.fromRaw (/root/DCL/bronzeage-node/lib/primitives/block.js:774:15)
    at Function.fromRaw (/root/DCL/bronzeage-node/lib/primitives/block.js:798:22)
  generatedMessage: false,
  name: 'AssertionError [ERR_ASSERTION]',
  code: 'ERR_ASSERTION',
  actual: false,
  expected: true,
  operator: '==' }
[error] Number exceeds 2^53-1
Swarm listening on /ip4/127.0.0.1/tcp/4003/ws/ipfs/QmefgK2WootELP2CmBCi1sHHpnVW81hDqm5ZpcsV8mCdDg
Swarm listening on /ip4/127.0.0.1/tcp/4002/ipfs/QmefgK2WootELP2CmBCi1sHHpnVW81hDqm5ZpcsV8mCdDg
Swarm listening on /ip4/10.0.2.15/tcp/4002/ipfs/QmefgK2WootELP2CmBCi1sHHpnVW81hDqm5ZpcsV8mCdDg
[info] IPFS ready
Dmitry1987 commented 7 years ago

testnet runs ok, but when changing to 'main', I have this crash