nimbus-eth1/nimbus
Jordan Hrycaj c01045c246
Update snap client account healing (#1521)
* Update nearby/neighbour leaf nodes finder

details:
  Update return error codes so that in the case that there is no more
  leaf node beyond the search direction, the particular error code
  `NearbyBeyondRange` is returned.

* Compile largest interval range containing only this leaf point

why:
  Will be needed in snap sync for adding single leaf nodes to the range
  of already allocated nodes.

* Reorg `hexary_inspect.nim`

why:
 Merged the nodes collecting algorithm for persistent and in-memory
 into a single generic function `hexary_inspect.inspectTrieImpl()`

* Update fetching accounts range failure handling in `rangeFetchAccounts()`

why:
  Rejected response leads now to fetching for another account range. Only
  repeated failures (or all done) terminate the algorithm.

* Update accounts healing

why:
+ Fixed looping over a bogus node response that could not inserted into
  the database. As a solution, these nodes are locally registered and not
  asked for in this download cycle.
+ Sub-optimal handling of interval range for a healed account leaf node.
  Now the maximal range interval containing this node is registered as
  processed which leafs to de-fragementation of the processed (and
  unprocessed) range list(s). So *gap* ranges which are known not to
  cover any account leaf node are not asked for on the network, anymore.
+ Sporadically remove empty interval ranges (if any)

* Update logging, better variable names
2023-03-25 10:44:48 +00:00
..
common More work on withdrawals (#1482) 2023-03-09 18:40:55 -05:00
core t8n tools support withdrawals records 2023-03-21 18:36:22 +07:00
db fix t8n tool bug and accounts cache bug 2023-03-23 11:07:30 +07:00
evm fix t8n tool bug and accounts cache bug 2023-03-23 11:07:30 +07:00
graphql bump submodules to further reduce compiler warnings 2023-02-02 09:29:02 +07:00
rpc More work on withdrawals (#1482) 2023-03-09 18:40:55 -05:00
sync Update snap client account healing (#1521) 2023-03-25 10:44:48 +00:00
transaction refactor touched accounts, selfdestruct, and log 2023-03-21 08:14:06 +07:00
utils refactor touched accounts, selfdestruct, and log 2023-03-21 08:14:06 +07:00
common.nim implement better hardfork management 2022-12-02 13:51:42 +07:00
config.nim Sketching in "stateless mode". (#1495) 2023-03-13 14:18:30 -04:00
constants.nim Silence compiler gossip after nim upgrade cont1 (#1455) 2023-01-31 01:32:17 +00:00
errors.nim fix EIP-3860 bugs 2023-01-13 13:04:23 +07:00
launcher.nim Premix-related changes 2019-01-28 12:38:23 +02:00
lightchain_shell.nim
makefile Snap sync fix trie interpolation fringe condition (#1457) 2023-02-01 18:56:06 +00:00
nim.cfg NAT port mapping 2019-04-17 03:56:28 +02:00
nimbus.nim Sketching in "stateless mode". (#1495) 2023-03-13 14:18:30 -04:00
rpc.nim implement better hardfork management 2022-12-02 13:51:42 +07:00
tracer.nim Silence compiler gossip after nim upgrade cont3 (#1466) 2023-02-14 20:27:17 +00:00
transaction.nim fix EIP-3860 intrinsic gas once again 2023-01-15 14:37:19 +07:00
version.nim dist: precompiled binaries and Docker images (#1015) 2022-03-27 13:21:15 +02:00
vm_compile_info.nim Prepare snap server client test scenario (#1483) 2023-03-02 09:57:58 +00:00
vm_computation.nim refactor touched accounts, selfdestruct, and log 2023-03-21 08:14:06 +07:00
vm_gas_costs.nim implement better hardfork management 2022-12-02 13:51:42 +07:00
vm_internals.nim refactor touched accounts, selfdestruct, and log 2023-03-21 08:14:06 +07:00
vm_precompiles.nim implement better hardfork management 2022-12-02 13:51:42 +07:00
vm_state.nim refactor touched accounts, selfdestruct, and log 2023-03-21 08:14:06 +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