erigon-pulse/p2p/discover
battlmonstr 04f07a0f08
Discovery: split node records to a sepatate DB table (#3581) (#3667)
Problem:
QuerySeeds will poke 150 random entries in the whole node DB and ignore hitting "field" entries.
In a bootstrap scenario it might hit hundreds of :lastping :lastpong entries,
and very few true "node record" entries.
After running for 15 minutes I've got totalEntryCount=1508 nodeRecordCount=114 entries.
There's a 1/16 chance of hitting a "node record" entry.
It means finding just about 10 nodes of 114 total on average from 150 attempts.

Solution:
Split "node record" entries to a separate table such that QuerySeeds doesn't do idle cycle hits.
2022-03-10 14:57:25 +01:00
..
v4wire Discovery: refactor public key to node ID conversions. (#3634) 2022-03-03 21:58:31 +07:00
v5wire Inner errors (#2774) 2021-10-04 22:16:52 +07:00
common.go Discovery: add Context to Listen. (#3577) 2022-02-22 18:18:43 +00:00
lookup.go rename (#1978) 2021-05-20 19:25:53 +01:00
node.go Discovery: refactor public key to node ID conversions. (#3634) 2022-03-03 21:58:31 +07:00
ntp.go Clean up DEBUG category logs (#2776) 2021-10-05 08:14:04 +07:00
table_test.go less qcheck iterations (#3622) 2022-02-25 13:47:48 +07:00
table_util_test.go Discovery: refactor public key to node ID conversions. (#3634) 2022-03-03 21:58:31 +07:00
table.go Discovery: split node records to a sepatate DB table (#3581) (#3667) 2022-03-10 14:57:25 +01:00
v4_lookup_test.go Discovery: refactor public key to node ID conversions. (#3634) 2022-03-03 21:58:31 +07:00
v4_udp_test.go Discovery: refactor public key to node ID conversions. (#3634) 2022-03-03 21:58:31 +07:00
v4_udp.go Discovery: refactor public key to node ID conversions. (#3634) 2022-03-03 21:58:31 +07:00
v5_udp_test.go Discovery: refactor public key to node ID conversions. (#3634) 2022-03-03 21:58:31 +07:00
v5_udp.go Discovery: add Context to Listen. (#3577) 2022-02-22 18:18:43 +00:00