nimbus-eth1/tests/test_sync_snap
Jordan Hrycaj 0a3bc102eb
Pre functional snap to full sync (#1546)
* Update sync scheduler pool mode

why:
  The pool mode allows to loop over active peers one after another. This
  is ideal for soft re-starting peers. As this is a two tier experience
  (start/stop, setup/release) the loop must be run twice. This is
  controlled by a more rigid re-definition of how to use the `poolMode`
  flag.

* Mitigate RLP serialiser deficiency

why:
  Currently, serialising the `BlockBody` in not conevrtible and need
  to be checked in the `eth` module. Currently a local fix for the
  wire protocol applies. Unit tests will stay (after this local solution
  will have been removed.)

* Code cosmetics and massage

details:
  Main part is `types.toStr()` as a unified function for logging block
  numbers.

* Allow to use a logical genesis replacement (start of history)

why:
  Snap sync will set up an arbitrary pivot at a block number different
  from zero. In fact, the higher the block number the better.

details:
  A non-genesis start of history will currently only affect the score
  values which were derived from the difficulty.

* Provide function to store the snap pivot block header in chain db

why:
  Together with the start of history facility, this allows to proceed
  with full syncing once snap has finished.

details:
  Snap db storage was switched from a sub-tables to the flat chain db.

* Provide database completeness and sanity checker

details:
  For debugging on smaller databases, only

* Implement snap -> full sync switch
2023-04-14 23:28:57 +01:00
..
bulk_test_xx.nim Snap sync extractor and sub range proofs cont1 (#1468) 2023-02-15 10:14:40 +00:00
sample0.txt.gz Update snap offline tests (#1199) 2022-08-24 14:44:18 +01:00
sample1.txt.gz Update snap offline tests (#1199) 2022-08-24 14:44:18 +01:00
sample2.txt.gz Snap fetch account storage data (#1211) 2022-09-02 19:16:09 +01:00
sample3.txt.gz Snap fetch account storage data (#1211) 2022-09-02 19:16:09 +01:00
snap_other_xx.nim Snap sync accounts healing (#1225) 2022-09-16 08:24:12 +01:00
snap_storage_xx.nim Snap sync fix trie interpolation fringe condition (#1457) 2023-02-01 18:56:06 +00:00
snap_test_xx.nim Snap fetch account storage data (#1211) 2022-09-02 19:16:09 +01:00
test_accounts.nim Prepare snap server client test scenario cont4 (#1507) 2023-03-17 14:46:50 +00:00
test_calc.nim Pre functional snap to full sync (#1546) 2023-04-14 23:28:57 +01:00
test_db_timing.nim Snap sync interval range extractor (#1449) 2023-01-30 17:50:58 +00:00
test_helpers.nim Snap sync extractor test sub range proofs (#1460) 2023-02-02 13:27:09 +00:00
test_inspect.nim Snap sync interval range extractor (#1449) 2023-01-30 17:50:58 +00:00
test_node_range.nim Update snap client account healing (#1521) 2023-03-25 10:44:48 +00:00
test_pivot.nim Prepare snap client for continuing with full sync (#1534) 2023-04-06 20:42:07 +01:00
test_storage.nim Snap sync fix trie interpolation fringe condition (#1457) 2023-02-01 18:56:06 +00:00
test_types.nim Bump nim-eth and remove all now unneeded p2p related imports (#1273) 2022-10-20 10:34:59 +02:00