nimbus-eth1/nimbus
Jordan Hrycaj cc2c888a63
Snap sync swap in other pivots (#1363)
* Provide index to reconstruct missing storage slots

why;
  Pivots will be changed anymore once they are officially archived. The
  account of the archived pivots are ready to be swapped into the active
  pivot. This leaves open how to treat storage slots not fetched yet.

  Solution: when mothballing, an `account->storage-root` index is
  compiled that can be used when swapping in accounts.

* Implement swap-in from earlier pivots

details;
  When most accounts are covered by the current and previous pivot
  sessions, swapping inthe accounts and storage slots  (i.e. registering
  account ranges done) from earlier pivots takes place if there is a
  common sub-trie.

* Throttle pivot change when healing state has bean reached

why:
  There is a hope to complete the current pivot, so pivot update can be
  throttled. This is achieved by setting another minimum block number
  distance for the pivot headers. This feature is still experimental
2022-12-12 22:00:24 +00:00
..
common fix persistHeaderToDb, allow POS block header to be canonical 2022-12-10 09:02:30 +07:00
core fix persistHeaderToDb, allow POS block header to be canonical 2022-12-10 09:02:30 +07:00
db fix persistHeaderToDb, allow POS block header to be canonical 2022-12-10 09:02:30 +07:00
docs.static Kludge for 'make docs' to produce pretty nim manuals 2022-01-22 08:26:57 +02:00
evm fix t8n does not support BLOCKHASH opcode 2022-12-08 13:20:22 +07:00
graphql implement better hardfork management 2022-12-02 13:51:42 +07:00
rpc fix persistHeaderToDb, allow POS block header to be canonical 2022-12-10 09:02:30 +07:00
sync Snap sync swap in other pivots (#1363) 2022-12-12 22:00:24 +00:00
transaction implement better hardfork management 2022-12-02 13:51:42 +07:00
utils add debug(tx) in utils/debug 2022-12-07 23:11:03 +07:00
common.nim implement better hardfork management 2022-12-02 13:51:42 +07:00
config.nim implement better hardfork management 2022-12-02 13:51:42 +07:00
constants.nim eth: adapt to smaller eth_types (#1210) 2022-09-03 20:15:35 +02:00
errors.nim Redesign of BaseVMState descriptor (#923) 2022-01-18 16:19:32 +00:00
launcher.nim Premix-related changes 2019-01-28 12:38:23 +02:00
lightchain_shell.nim Some renames 2018-05-28 13:22:28 +03:00
makefile wire evmc to vm2 and drop legacy vm 2022-09-26 15:16:28 +07:00
nim.cfg NAT port mapping 2019-04-17 03:56:28 +02:00
nimbus.nim rename Fast Sync to Legacy Sync 2022-12-05 09:42:25 +07:00
rpc.nim implement better hardfork management 2022-12-02 13:51:42 +07:00
tracer.nim implement better hardfork management 2022-12-02 13:51:42 +07:00
transaction.nim implement better hardfork management 2022-12-02 13:51:42 +07:00
version.nim dist: precompiled binaries and Docker images (#1015) 2022-03-27 13:21:15 +02:00
vm_compile_info.nim implement better hardfork management 2022-12-02 13:51:42 +07:00
vm_computation.nim implement better hardfork management 2022-12-02 13:51:42 +07:00
vm_gas_costs.nim implement better hardfork management 2022-12-02 13:51:42 +07:00
vm_internals.nim implement better hardfork management 2022-12-02 13:51:42 +07:00
vm_precompiles.nim implement better hardfork management 2022-12-02 13:51:42 +07:00
vm_state.nim implement better hardfork management 2022-12-02 13:51:42 +07:00
vm_state_transactions.nim implement better hardfork management 2022-12-02 13:51:42 +07:00
vm_types.nim implement better hardfork management 2022-12-02 13:51:42 +07:00