kyuupichan/electrumx

Synchronization stops at block height 724940

soichisumi opened this issue · 0 comments

I am running kyuupichan/electrumx==1.20.2 as a BitcoinSV SPV node.
When I run the latest BitcoinSV node (1.0.11) referenced as a daemon, the synchronization stops at block height 724940.

The error message at that time is below.

INFO:DB:tx/sec since genesis: 4,543, since last flush: 5,178
INFO:DB:sync time: 2d 05h 04m  ETA: 40m 57s
INFO:BlockProcessor:our height: 724,560 daemon: 756,369 UTXOs 1,272MB hist 24MB
INFO:BlockProcessor:our height: 724,563 daemon: 756,369 UTXOs 1,285MB hist 48MB
....
INFO:BlockProcessor:our height: 724,939 daemon: 756,373 UTXOs 1,478MB hist 324MB
INFO:Prefetcher:cancelled; prefetcher stopping
INFO:Controller:shutting down
INFO:Controller:shutdown complete
ERROR:electrumx:ElectrumX server terminated abnormally
Traceback (most recent call last):
  File "/usr/src/app/venv/bin/electrumx_server", line 35, in main
    asyncio.run(controller.run())
  File "/usr/local/lib/python3.9/asyncio/runners.py", line 44, in run
    return loop.run_until_complete(main)
  File "/usr/local/lib/python3.9/asyncio/base_events.py", line 642, in run_until_complete
    return future.result()
  File "/usr/src/app/venv/lib/python3.9/site-packages/electrumx/lib/server_base.py", line 129, in run
    await server_task
  File "/usr/src/app/venv/lib/python3.9/site-packages/electrumx/lib/server_base.py", line 102, in serve
    await self.serve(shutdown_event)
  File "/usr/src/app/venv/lib/python3.9/site-packages/electrumx/server/controller.py", line 134, in serve
    await group.spawn(wait_for_catchup())
  File "/usr/src/app/venv/lib/python3.9/site-packages/aiorpcx/curio.py", line 255, in __aexit__
    await self.join()
  File "/usr/src/app/venv/lib/python3.9/site-packages/aiorpcx/curio.py", line 213, in join
    raise task.exception()
  File "/usr/src/app/venv/lib/python3.9/site-packages/electrumx/server/block_processor.py", line 702, in fetch_and_process_blocks
    await group.spawn(self._process_prefetched_blocks())
  File "/usr/src/app/venv/lib/python3.9/site-packages/aiorpcx/curio.py", line 255, in __aexit__
    await self.join()
  File "/usr/src/app/venv/lib/python3.9/site-packages/aiorpcx/curio.py", line 213, in join
    raise task.exception()
  File "/usr/src/app/venv/lib/python3.9/site-packages/electrumx/server/block_processor.py", line 663, in _process_prefetched_blocks
    await self.check_and_advance_blocks(blocks)
  File "/usr/src/app/venv/lib/python3.9/site-packages/electrumx/server/block_processor.py", line 221, in check_and_advance_blocks
    blocks = [self.coin.block(raw_block, first + n)
  File "/usr/src/app/venv/lib/python3.9/site-packages/electrumx/server/block_processor.py", line 221, in <listcomp>
    blocks = [self.coin.block(raw_block, first + n)
  File "/usr/src/app/venv/lib/python3.9/site-packages/electrumx/lib/coins.py", line 256, in block
    txs = cls.DESERIALIZER(raw_block, start=len(header)).read_tx_block()
  File "/usr/src/app/venv/lib/python3.9/site-packages/electrumx/lib/tx.py", line 152, in read_tx_block
    return [read() for _ in range(self._read_varint())]
  File "/usr/src/app/venv/lib/python3.9/site-packages/electrumx/lib/tx.py", line 152, in <listcomp>
    return [read() for _ in range(self._read_varint())]
  File "/usr/src/app/venv/lib/python3.9/site-packages/electrumx/lib/tx.py", line 142, in read_tx_and_hash
    return self.read_tx(), self.TX_HASH_FN(self.binary[start:self.cursor])
  File "/usr/src/app/venv/lib/python3.9/site-packages/electrumx/lib/tx.py", line 131, in read_tx
    self._read_outputs(),   # outputs
  File "/usr/src/app/venv/lib/python3.9/site-packages/electrumx/lib/tx.py", line 168, in _read_outputs
    return [read_output() for i in range(self._read_varint())]
  File "/usr/src/app/venv/lib/python3.9/site-packages/electrumx/lib/tx.py", line 168, in <listcomp>
    return [read_output() for i in range(self._read_varint())]
  File "/usr/src/app/venv/lib/python3.9/site-packages/electrumx/lib/tx.py", line 173, in _read_output
    self._read_varbytes(),  # pk_script
  File "/usr/src/app/venv/lib/python3.9/site-packages/electrumx/lib/tx.py", line 188, in _read_varbytes
    return self._read_nbytes(self._read_varint())
  File "/usr/src/app/venv/lib/python3.9/site-packages/electrumx/lib/tx.py", line 184, in _read_nbytes
    assert self.binary_length >= end
AssertionError

The following peer seems to be synchronized up to the latest block. Am I missing something?

sv.usebsv.com ElectrumX 1.20.2  
sv2.satoshi.io "ElectrumX 1.20.2
satoshi.vision.cash "ElectrumX 1.20.2