status-im / nimbus-eth2

Nim implementation of the Ethereum Beacon Chain
https://nimbus.guide
Other
521 stars 223 forks source link

hash_tree_root: pathological case in test_fixture_sanity_blocks #452

Closed mratsim closed 4 years ago

mratsim commented 4 years ago

When compiling test_fixture_sanity_blocks as a standalone and running it, I manage to block my machine for a couple minutes on what seems to be faststreams memory manager:

[Suite] Official - Sanity - Blocks  [Preset: mainnet]
  [OK] [Invalid] Previous slot block transition (prev_slot_block_transition)
  [OK] [Valid]   Same slot block transition (same_slot_block_transition)
  [OK] [Valid]   Empty block transition (empty_block_transition)
  [OK] [Valid]   Skipped Slots (skipped_slots)
^CTraceback (most recent call last)
/home/beta/Programming/Status/nim-beacon-chain/tests/official/test_fixture_sanity_blocks.nim(83) test_fixture_sanity_blocks
/home/beta/Programming/Status/nim-beacon-chain/tests/official/test_fixture_sanity_blocks.nim(43) testImpl_blck_empty_epoch_transition
/home/beta/Programming/Status/nim-beacon-chain/beacon_chain/state_transition.nim(115) state_transition
/home/beta/Programming/Status/nim-beacon-chain/beacon_chain/state_transition.nim(63) process_slots
/home/beta/Programming/Status/nim-beacon-chain/beacon_chain/state_transition.nim(45) process_slot
/home/beta/Programming/Status/nim-beacon-chain/beacon_chain/ssz.nim(584) hash_tree_root
/home/beta/Programming/Status/nim-beacon-chain/beacon_chain/ssz.nim(454) hashTreeRootImpl
/home/beta/Programming/Status/nim-beacon-chain/beacon_chain/ssz.nim(584) hash_tree_root
/home/beta/Programming/Status/nim-beacon-chain/beacon_chain/ssz.nim(454) hashTreeRootImpl
/home/beta/Programming/Status/nim-beacon-chain/beacon_chain/ssz.nim(584) hash_tree_root
/home/beta/Programming/Status/nim-beacon-chain/beacon_chain/ssz.nim(525) hashTreeRootImpl
/home/beta/Programming/Status/nim-beacon-chain/beacon_chain/ssz.nim(446) merkelizeSerializedChunks
/home/beta/Programming/Status/nim-beacon-chain/beacon_chain/ssz.nim(440) merkelizeSerializedChunks
/home/beta/Programming/Status/nim-beacon-chain/beacon_chain/ssz.nim(426) newSszHashingStream
/home/beta/Programming/Status/nim-beacon-chain/vendor/nim-faststreams/faststreams/output_stream.nim(88) initWithSinglePage
/home/beta/Programming/Status/nim-beacon-chain/vendor/nim-faststreams/faststreams/output_stream.nim(76) addPage
/home/beta/.choosenim/toolchains/nim-0.19.6/lib/system/gc.nim(477) newObj
SIGINT: Interrupted by Ctrl-C.
Traceback (most recent call last)
proxyexe.nim(62)         proxyexe
proxyexe.nim(49)         main
osproc.nim(1136)         waitForExit
SIGINT: Interrupted by Ctrl-C.
tersec commented 4 years ago

Fixed by https://github.com/status-im/nim-beacon-chain/pull/595