spesmilo / electrumx

Alternative implementation of spesmilo/electrum-server
MIT License
429 stars 343 forks source link

OverflowError while running python electrumx_server in latest version, previuos veron is working. #249

Closed AflenChen closed 5 months ago

AflenChen commented 5 months ago
F:\atomicals-electrumx(master -> origin)
λ python electrumx_server
INFO:electrumx:ElectrumX server starting
INFO:electrumx:logging level: INFO
INFO:Controller:Python version: 3.10.4 (tags/v3.10.4:9d38120, Mar 23 2022, 23:13:41) [MSC v.1929 64 bit (AMD64)]
INFO:Controller:software version: ElectrumX 1.16.0
INFO:Controller:aiorpcX version: 0.22.1
INFO:Controller:supported protocol versions: 1.4-1.4.3
INFO:Controller:event loop policy: None
INFO:Controller:reorg limit is 200 blocks
INFO:Daemon:daemon #1 at localhost:8332/ (current)
INFO:DB:switching current directory to F:\electrumx-data
INFO:DB:using leveldb for DB backend
INFO:DB:opened UTXO DB (for sync: True)
INFO:DB:UTXO DB version: 8
INFO:DB:coin: Bitcoin
INFO:DB:network: mainnet
INFO:DB:height: 828,127
INFO:DB:tip: 00000000000000000001196681106ccd7b11ffc6f6fb644bbb98fa00db4f7deb
INFO:DB:tx count: 960,008,301
INFO:DB:atomical count: 187,476
INFO:DB:flushing DB cache at 400 MB
INFO:History:history DB version: 1
INFO:History:flush count: 4,462
INFO:Prefetcher:catching up to daemon height 828,806 (679 blocks behind)
INFO:SessionManager:RPC server listening on localhost:8000
INFO:Prefetcher:cancelled; prefetcher stopping
INFO:SessionManager:closing down server for rpc://localhost:8000
INFO:Controller:shutting down
INFO:Controller:shutdown complete
ERROR:electrumx:ElectrumX server terminated abnormally
Traceback (most recent call last):
  File "F:\atomicals-electrumx\electrumx_server", line 43, in main
    asyncio.run(controller.run())
  File "C:\Python310\lib\asyncio\runners.py", line 44, in run
    return loop.run_until_complete(main)
  File "C:\Python310\lib\asyncio\base_events.py", line 646, in run_until_complete
    return future.result()
  File "F:\atomicals-electrumx\electrumx\lib\server_base.py", line 129, in run
    await server_task
  File "F:\atomicals-electrumx\electrumx\lib\server_base.py", line 102, in serve
    await self.serve(shutdown_event)
  File "F:\atomicals-electrumx\electrumx\server\controller.py", line 134, in serve
    async with OldTaskGroup() as group:
  File "C:\Python310\lib\site-packages\aiorpcx\curio.py", line 297, in __aexit__
    await self.join()
  File "F:\atomicals-electrumx\electrumx\lib\util.py", line 370, in join
    task.result()
  File "F:\atomicals-electrumx\electrumx\server\block_processor.py", line 3418, in fetch_and_process_blocks
    async with OldTaskGroup() as group:
  File "C:\Python310\lib\site-packages\aiorpcx\curio.py", line 297, in __aexit__
    await self.join()
  File "F:\atomicals-electrumx\electrumx\lib\util.py", line 370, in join
    task.result()
  File "F:\atomicals-electrumx\electrumx\server\block_processor.py", line 3380, in _process_prefetched_blocks
    await self.check_and_advance_blocks(blocks)
  File "F:\atomicals-electrumx\electrumx\server\block_processor.py", line 316, in check_and_advance_blocks
    await self.run_in_thread_with_lock(self.advance_blocks, blocks)
  File "F:\atomicals-electrumx\electrumx\server\block_processor.py", line 299, in run_in_thread_with_lock
    return await asyncio.shield(run_in_thread_locked())
  File "F:\atomicals-electrumx\electrumx\server\block_processor.py", line 298, in run_in_thread_locked
    return await run_in_thread(func, *args)
  File "C:\Python310\lib\site-packages\aiorpcx\curio.py", line 57, in run_in_thread
    return await get_event_loop().run_in_executor(None, func, *args)
  File "C:\Python310\lib\concurrent\futures\thread.py", line 58, in run
    result = self.fn(*self.args, **self.kwargs)
  File "F:\atomicals-electrumx\electrumx\server\block_processor.py", line 500, in advance_blocks
    undo_info, atomicals_undo_info = self.advance_txs(block.transactions, is_unspendable, block.header, height)
  File "F:\atomicals-electrumx\electrumx\server\block_processor.py", line 2795, in advance_txs
    blueprint_builder = self.color_atomicals_outputs(atomicals_operations_found_at_inputs, atomicals_spent_at_inputs, tx, tx_hash, tx_num, height)
  File "F:\atomicals-electrumx\electrumx\server\block_processor.py", line 1652, in color_atomicals_outputs
    blueprint_builder = AtomicalsTransferBlueprintBuilder(self.logger, atomicals_spent_at_inputs, operations_found_at_inputs, tx_hash, tx, self.get_atomicals_id_mint_info, self.is_dmint_activated(height))
  File "F:\atomicals-electrumx\electrumx\lib\atomicals_blueprint_builder.py", line 191, in __init__
    nft_output_blueprint, ft_output_blueprint = AtomicalsTransferBlueprintBuilder.calculate_output_blueprint(self.get_atomicals_id_mint_info, self.tx, self.nft_atomicals, self.ft_atomicals, self.atomicals_spent_at_inputs, self.operations_found_at_inputs, self.sort_fifo)
  File "F:\atomicals-electrumx\electrumx\lib\atomicals_blueprint_builder.py", line 396, in calculate_output_blueprint
    ft_blueprint = AtomicalsTransferBlueprintBuilder.calculate_output_blueprint_fts(tx, ft_atomicals, operations_found_at_inputs, sort_fifo)
  File "F:\atomicals-electrumx\electrumx\lib\atomicals_blueprint_builder.py", line 327, in calculate_output_blueprint_fts
    return AtomicalsTransferBlueprintBuilder.color_ft_atomicals_regular(ft_atomicals, tx, sort_fifo)
  File "F:\atomicals-electrumx\electrumx\lib\atomicals_blueprint_builder.py", line 377, in color_ft_atomicals_regular
    ft_coloring_summary = calculate_outputs_to_color_for_ft_atomical_ids(tx, ft_atomicals, sort_fifo)
  File "F:\atomicals-electrumx\electrumx\lib\atomicals_blueprint_builder.py", line 71, in calculate_outputs_to_color_for_ft_atomical_ids
    sats_needed = get_adjusted_sats_needed_by_exponent(item.total_tokenvalue, use_exponent)
  File "F:\atomicals-electrumx\electrumx\lib\atomicals_blueprint_builder.py", line 55, in get_adjusted_sats_needed_by_exponent
    return int(value * (10**exponent))
OverflowError: int too large to convert to float
SomberNight commented 5 months ago

This looks like some altcoin, and one that does not even have merged in support(?)...