nimbus-eth1/nimbus/sync
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
..
full Prepare snap server client test scenario cont2 (#1487) 2023-03-07 14:23:22 +00:00
handlers Update snap server client test scenario (#1518) 2023-03-22 20:11:49 +00:00
misc Prepare snap server client test scenario cont2 (#1487) 2023-03-07 14:23:22 +00:00
protocol Update snap server client test scenario (#1518) 2023-03-22 20:11:49 +00:00
snap Update snap client account healing (#1521) 2023-03-25 10:44:48 +00:00
full.nim Prepare snap server client test scenario cont1 (#1485) 2023-03-03 20:01:59 +00:00
handlers.nim Snap sync extractor and sub range proofs cont1 (#1468) 2023-02-15 10:14:40 +00:00
legacy.nim Silence some compiler gossip -- part 8, sync (#1467) 2023-02-14 23:38:33 +00:00
peers.nim Slightly change the static peer manager lookup behaviour (#1484) 2023-03-06 09:22:07 +00:00
protocol.nim initial wire protocol transformation 2022-10-15 19:48:21 +07:00
skeleton.nim implement better hardfork management 2022-12-02 13:51:42 +07:00
snap.nim Prepare snap server client test scenario cont1 (#1485) 2023-03-03 20:01:59 +00:00
stateless.nim Sketching in "stateless mode". (#1495) 2023-03-13 14:18:30 -04:00
sync_desc.nim Prepare snap server client test scenario (#1483) 2023-03-02 09:57:58 +00:00
sync_sched.nim Prepare snap server client test scenario cont2 (#1487) 2023-03-07 14:23:22 +00:00
types.nim Silence compiler gossip after nim upgrade (#1454) 2023-01-30 22:10:23 +00:00