Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • hive hive
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 131
    • Issues 131
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 28
    • Merge requests 28
  • Deployments
    • Deployments
    • Releases
  • Packages and registries
    • Packages and registries
    • Container Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Commits
  • Issue Boards
Collapse sidebar
  • hivehive
  • hivehive
  • Issues
  • #77
Closed
Open
Issue created Sep 25, 2020 by Gandalf@gandalfMaintainer

shared_memory.bin file is not removed while replay or force-replay

Steps to reproduce: stop node in old version use new version of binary that requires replay use --replay --force-replay get errors:

chain_plugin.cpp:733          plugin_startup       ] Database opening...
chain_plugin.cpp:504          open                 ] Opening shared memory from /run/hive
Compiler and build environment read from persistent storage: `{"compiler":"7.5.0", "debug":0, "apple":0, "windows":0,   "version" : { "hive_blockchain_hard_fork" : "1.24.0", "hive_git_revision" : "4bb55d5181e29e9dc4ace145a475159aa7dcf349" }, "plugins" : ["account_by_key", "account_by_key_api", "account_history_api", "account_history_rocksdb", "block_api", "chain", "condenser_api", "database_api", "json_rpc", "market_history", "market_history_api", "network_broadcast_api", "p2p", "rc", "rc_api", "reputation", "reputation_api", "transaction_status", "transaction_status_api", "webserver", "witness"]}'
database.cpp:160              operator()           ] Persistent storage was created according to the version:   "version" : { "hive_blockchain_hard_fork" : "1.24.0", "hive_git_revision" : "4bb55d5181e29e9dc4ace145a475159aa7dcf349" } but current node has the version:   "version" : { "hive_blockchain_hard_fork" : "1.24.2", "hive_git_revision" : "00b5ff5573dcaa1c54ed8ed9cfbde06dee269c7e" }
database.cpp:160              operator()           ] Persistent storage was created using plugins: "plugins" : ["account_by_key", "account_by_key_api", "account_history_api", "account_history_rocksdb", "block_api", "chain", "condenser_api", "database_api", "json_rpc", "market_history", "market_history_api", "network_broadcast_api", "p2p", "rc", "rc_api", "reputation", "reputation_api", "transaction_status", "transaction_status_api", "webserver", "witness"] but current node has following plugins: "plugins" : ["account_by_key", "account_by_key_api", "account_history_api", "account_history_rocksdb", "block_api", "chain", "condenser_api", "database_api", "json_rpc", "market_history", "market_history_api", "network_broadcast_api", "p2p", "rc", "rc_api", "reputation", "reputation_api", "state_snapshot", "transaction_status", "transaction_status_api", "webserver", "witness"]
database.cpp:247              open                 ] 13 N5boost16exception_detail10clone_implINS0_19error_info_injectorISt13runtime_errorEEEE: content of memory does not match data expected by executable
rethrow content of memory does not match data expected by executable: 
    {"args.data_dir":"/optane/blockchain","args.shared_mem_dir":"/run/hive","args.shared_file_size":"25769803776","what":"content of memory does not match data expected by executable"}
    database.cpp:247 open
database.cpp:247              open                 ] args.data_dir: /optane/blockchain args.shared_mem_dir: /run/hive args.shared_file_size: 25769803776 
chain_plugin.cpp:513          open                 ] Error opening database. If the binary or configuration has changed, replay the blockchain explicitly using `--replay-blockchain`.
chain_plugin.cpp:514          open                 ] If you know what you are doing you can skip this check and force open the database using `--force-open`.
chain_plugin.cpp:515          open                 ] WARNING: THIS MAY CORRUPT YOUR DATABASE. FORCE OPEN AT YOUR OWN RISK.
chain_plugin.cpp:516          open                 ]  Error: {"code":13,"name":"N5boost16exception_detail10clone_implINS0_19error_info_injectorISt13runtime_errorEEEE","message":"content of memory does not match data expected by executable","stack":[{"context":{"level":"warn","file":"database.cpp","line":247,"method":"open","hostname":"","timestamp":"2020-09-25T17:14:43"},"format":"rethrow ${what}: ","data":{"args.data_dir":"/optane/blockchain","args.shared_mem_dir":"/run/hive","args.shared_file_size":"25769803776","what":"content of memory does not match data expected by executable"}}]}

easy workaround is just to remove shared_memory.bin from location defined by shared dir (which is by default data dir)

Assignee
Assign to
Time tracking