EOSIO / eos

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

update 1.8.10 →2.0.1 via blocks.log #8545

Closed KrzysztofHajdamowicz closed 4 years ago

KrzysztofHajdamowicz commented 4 years ago

Hi, I have a fleet of EOS nodes with history_plugin, each data directory weights about 500GiB+ According to releases, EOS 2.0.x requires full resync from genesis. After some tune-up, I'm syncing about 1 month of blockchain history on each 24h period. My first 2.0 instance will catch-up in about a week since now.

Can I speed up this process by copying blocks.log from 1.8.x instance and doing hard replay?

heifner commented 4 years ago

Yes.

KrzysztofHajdamowicz commented 4 years ago

Thank you!

heifner commented 4 years ago

Also use --eos-vm-oc-enable and --wasm-runtime eos-vm-jit

KrzysztofHajdamowicz commented 4 years ago

That's my current config.ini

agent-name = xxxREDACTEDxxx
blocks-dir = "blocks"
chain-state-db-size-mb = 8192
reversible-blocks-db-size-mb = 1024
contracts-console = false
http-server-address = 0.0.0.0:8888
p2p-listen-endpoint = 0.0.0.0:9876
p2p-server-address = 0.0.0.0:9876
http-validate-host = false
verbose-http-errors = true
abi-serializer-max-time-ms = 2000
access-control-allow-origin = *
allowed-connection = any
#log-level-net-plugin = info
max-clients = 32
connection-cleanup-period = 30
enable-stale-production = false
pause-on-startup = false
max-transaction-time = 60000
max-irreversible-block-age = -1
txn-reference-block-lag = 0
#unlock-timeout = 90000
plugin = eosio::chain_api_plugin
plugin = eosio::history_plugin
plugin = eosio::history_api_plugin
plugin = eosio::chain_plugin
plugin = eosio::net_plugin
plugin = eosio::http_plugin
filter-on=xxxREDACTEDxxx:transfer:

####
# new in eos 2.0
####
sync-fetch-span = 1000
wasm-runtime = eos-vm-jit
eos-vm-oc-enable = true
eos-vm-oc-compile-threads = 8
net-threads = 4
# end
p2p-peer-address = api-full1.eoseoul.io:9876
p2p-peer-address = api-full2.eoseoul.io:9876
p2p-peer-address = boot.eostitan.com:9876
p2p-peer-address = bp.cryptolions.io:9876
p2p-peer-address = br.eosrio.io:9876
p2p-peer-address = eos-seed-de.privex.io:9876
p2p-peer-address = eu1.eosdac.io:49876
p2p-peer-address = fullnode.eoslaomao.com:443
p2p-peer-address = mainnet.eoscalgary.io:5222
p2p-peer-address = node.eosflare.io:1883
p2p-peer-address = node1.eoscannon.io:59876
p2p-peer-address = node1.eosnewyork.io:6987
p2p-peer-address = node2.eosnewyork.io:6987
p2p-peer-address = p2p.eosdetroit.io:3018
p2p-peer-address = p2p.genereos.io:9876
p2p-peer-address = p2p.meet.one:9876
p2p-peer-address = peer.eosn.io:9876
p2p-peer-address = peer1.mainnet.helloeos.com.cn:80
p2p-peer-address = peer2.mainnet.helloeos.com.cn:80
p2p-peer-address = peering.mainnet.eoscanada.com:9876
p2p-peer-address = peering1.mainnet.eosasia.one:80
p2p-peer-address = peering2.mainnet.eosasia.one:80
p2p-peer-address = seed1.greymass.com:9876
p2p-peer-address = seed2.greymass.com:9876

actor-blacklist = blacklistmee
[...]

It's running on 12-core Xeon server with 64G of RAM and nvme SSD. Do you see any obvious mistakes in this config?

heifner commented 4 years ago

@tbfleming Does he need to disable replay opts for history_plugin ?

heifner commented 4 years ago

chain-state-db-size-mb = 8192 is way too low. max-transaction-time = 60000 Anything more than 500 doesn't make any sense.

tbfleming commented 4 years ago

history_plugin shouldn't need disable-replay-opts