EOSIO / eos

An open source smart contract platform
https://developers.eos.io/manuals/eos
MIT License
11.27k stars 3.76k forks source link

Error when restarting Local Single-Node Testnet #10226

Open cpadilla opened 3 years ago

cpadilla commented 3 years ago

Hello! I'm currently trying to follow the Elemental Battles EOSIO tutorial. I'm using the script init_blockchain.sh to start the blockchain. I've been successfully able to connect to it and deploy my smart contracts to it. However, whenever I stop the node by killing nodeos, I am unable to restart the blockchain using continue_blockchain.sh.

When restarting it, it starts by syncing up to head and then repeatedly prints out the last error message:

info  2021-04-03T19:08:31.536 thread-0  controller.cpp:488            replay               ] 163500 of 164711
info  2021-04-03T19:08:31.777 thread-0  controller.cpp:488            replay               ] 164000 of 164711
info  2021-04-03T19:08:32.017 thread-0  controller.cpp:488            replay               ] 164500 of 164711
info  2021-04-03T19:08:32.118 thread-0  controller.cpp:495            replay               ] 164710 irreversible blocks replayed
info  2021-04-03T19:08:32.118 thread-0  controller.cpp:525            replay               ] 0 reversible blocks replayed
info  2021-04-03T19:08:32.118 thread-0  controller.cpp:531            replay               ] replayed 164710 blocks in 82 seconds, 0.50044198556241615 ms/block
info  2021-04-03T19:08:32.118 thread-0  chain_plugin.cpp:1166         plugin_startup       ] starting chain in read/write mode
info  2021-04-03T19:08:32.118 thread-0  chain_plugin.cpp:1171         plugin_startup       ] Blockchain started; head block is #164711, genesis timestamp is 2018-06-01T12:00:00.000
info  2021-04-03T19:08:32.118 thread-0  producer_plugin.cpp:969       plugin_startup       ] producer plugin:  plugin_startup() begin
info  2021-04-03T19:08:32.118 thread-0  producer_plugin.cpp:994       plugin_startup       ] Launching block production for 1 producers at 2021-04-03T19:08:32.118.
info  2021-04-03T19:08:32.119 thread-0  producer_plugin.cpp:1005      plugin_startup       ] producer plugin:  plugin_startup() end
info  2021-04-03T19:08:32.119 thread-0  chain_api_plugin.cpp:105      plugin_startup       ] starting chain_api_plugin
info  2021-04-03T19:08:32.119 thread-0  http_plugin.cpp:927           add_handler          ] add api url: /v1/chain/get_info
info  2021-04-03T19:08:32.119 thread-0  http_plugin.cpp:927           add_handler          ] add api url: /v1/chain/abi_bin_to_json
info  2021-04-03T19:08:32.119 thread-0  http_plugin.cpp:927           add_handler          ] add api url: /v1/chain/abi_json_to_bin
info  2021-04-03T19:08:32.119 thread-0  http_plugin.cpp:927           add_handler          ] add api url: /v1/chain/get_abi
info  2021-04-03T19:08:32.119 thread-0  http_plugin.cpp:927           add_handler          ] add api url: /v1/chain/get_account
info  2021-04-03T19:08:32.119 thread-0  http_plugin.cpp:927           add_handler          ] add api url: /v1/chain/get_activated_protocol_features
info  2021-04-03T19:08:32.119 thread-0  http_plugin.cpp:927           add_handler          ] add api url: /v1/chain/get_block
info  2021-04-03T19:08:32.119 thread-0  http_plugin.cpp:927           add_handler          ] add api url: /v1/chain/get_block_header_state
info  2021-04-03T19:08:32.119 thread-0  http_plugin.cpp:927           add_handler          ] add api url: /v1/chain/get_code
info  2021-04-03T19:08:32.119 thread-0  http_plugin.cpp:927           add_handler          ] add api url: /v1/chain/get_code_hash
info  2021-04-03T19:08:32.119 thread-0  http_plugin.cpp:927           add_handler          ] add api url: /v1/chain/get_currency_balance
info  2021-04-03T19:08:32.119 thread-0  http_plugin.cpp:927           add_handler          ] add api url: /v1/chain/get_currency_stats
info  2021-04-03T19:08:32.119 thread-0  http_plugin.cpp:927           add_handler          ] add api url: /v1/chain/get_producer_schedule
info  2021-04-03T19:08:32.119 thread-0  http_plugin.cpp:927           add_handler          ] add api url: /v1/chain/get_producers
info  2021-04-03T19:08:32.119 thread-0  http_plugin.cpp:927           add_handler          ] add api url: /v1/chain/get_raw_abi
info  2021-04-03T19:08:32.119 thread-0  http_plugin.cpp:927           add_handler          ] add api url: /v1/chain/get_raw_code_and_abi
info  2021-04-03T19:08:32.119 thread-0  http_plugin.cpp:927           add_handler          ] add api url: /v1/chain/get_required_keys
info  2021-04-03T19:08:32.119 thread-0  http_plugin.cpp:927           add_handler          ] add api url: /v1/chain/get_scheduled_transactions
info  2021-04-03T19:08:32.119 thread-0  http_plugin.cpp:927           add_handler          ] add api url: /v1/chain/get_table_by_scope
info  2021-04-03T19:08:32.119 thread-0  http_plugin.cpp:927           add_handler          ] add api url: /v1/chain/get_table_rows
info  2021-04-03T19:08:32.119 thread-0  http_plugin.cpp:927           add_handler          ] add api url: /v1/chain/get_transaction_id
info  2021-04-03T19:08:32.119 thread-0  http_plugin.cpp:927           add_handler          ] add api url: /v1/chain/push_block
info  2021-04-03T19:08:32.119 thread-0  http_plugin.cpp:927           add_handler          ] add api url: /v1/chain/push_transaction
info  2021-04-03T19:08:32.119 thread-0  http_plugin.cpp:927           add_handler          ] add api url: /v1/chain/push_transactions
info  2021-04-03T19:08:32.119 thread-0  http_plugin.cpp:927           add_handler          ] add api url: /v1/chain/send_transaction
info  2021-04-03T19:08:32.119 thread-0  history_api_plugin.cpp:34     plugin_startup       ] starting history_api_plugin
info  2021-04-03T19:08:32.119 thread-0  http_plugin.cpp:927           add_handler          ] add api url: /v1/history/get_actions
info  2021-04-03T19:08:32.119 thread-0  http_plugin.cpp:927           add_handler          ] add api url: /v1/history/get_controlled_accounts
info  2021-04-03T19:08:32.119 thread-0  http_plugin.cpp:927           add_handler          ] add api url: /v1/history/get_key_accounts
info  2021-04-03T19:08:32.119 thread-0  http_plugin.cpp:927           add_handler          ] add api url: /v1/history/get_transaction
info  2021-04-03T19:08:32.120 thread-0  net_plugin.cpp:3481           plugin_startup       ] my node_id is bb667c0b76470f3a93e38f2d116fe7223d8461b9c4072abf4b159e7162e5e072
info  2021-04-03T19:08:32.120 thread-0  net_plugin.cpp:3537           plugin_startup       ] starting listener, max clients is 25
info  2021-04-03T19:08:32.120 thread-0  http_plugin.cpp:821           operator()           ] start listening for http requests
info  2021-04-03T19:08:32.120 thread-0  http_plugin.cpp:927           add_handler          ] add api url: /v1/node/get_supported_apis
warn  2021-04-03T19:08:32.401 thread-0  producer_plugin.cpp:2155      maybe_produce_block  ] 3020000 fork_database_exception: Fork database exception
committed block did not become the new head in fork database                                                                                                 
    {}                                                                                                                                                       
    thread-0  controller.cpp:1751 commit_block                                                                                                               

error 2021-04-03T19:08:32.401 thread-0  producer_plugin.cpp:1503      start_block          ] Not producing block because "eosio" signed a block at the next block time or later (2021-04-03T19:08:32.500) than the pending block time (2021-04-03T19:08:32.500)                                                           
warn  2021-04-03T19:08:32.500 thread-0  producer_plugin.cpp:1593      start_block          ] 3060000 database_exception: Database exception
db revision is not on par with head block                                                                                                                    
    {"db.revision()":164711,"controller_head_block":164712,"fork_db_head_block":164712}                                                                      
    thread-0  controller.cpp:1536 start_block                                                                                                                

error 2021-04-03T19:08:32.500 thread-0  producer_plugin.cpp:2037      schedule_production_ ] Failed to start a pending block, will try again later
warn  2021-04-03T19:08:32.551 thread-0  producer_plugin.cpp:1593      start_block          ] 3060000 database_exception: Database exception
db revision is not on par with head block                                                                                                                    
    {"db.revision()":164711,"controller_head_block":164712,"fork_db_head_block":164712}                                                                      
    thread-0  controller.cpp:1536 start_block                                                                                                                

For the record, 466758 is the output of ulimit -n. Also, disclaimer: I'm running eos on FreeBSD. I know it's not officially supported, however I was able to build eos and eos.cdt successfully so I figured I should be good from there.

Not sure if this is an issue with eos or if this is the right place to ask but I figured I'd try anyway since it looks like a similar issue was reported on stack overflow here: https://eosio.stackexchange.com/questions/5565/im-facing-this-error-after-replaying-the-nodeos-towards-the-very-end-block-ca

heifner commented 3 years ago

You can try a --hard-replay-blockchain