erigon-pulse/cmd
Felix Lange c8d82bfc5c p2p/dnsdisc: add enode.Iterator API (#20437)
* p2p/dnsdisc: add support for enode.Iterator

This changes the dnsdisc.Client API to support the enode.Iterator
interface.

* p2p/dnsdisc: rate-limit DNS requests

* p2p/dnsdisc: preserve linked trees across root updates

This improves the way links are handled when the link root changes.
Previously, sync would simply remove all links from the current tree and
garbage-collect all unreachable trees before syncing the new list of
links.

This behavior isn't great in certain cases: Consider a structure where
trees A, B, and C reference each other and D links to A. If D's link
root changed, the sync code would first remove trees A, B and C, only to
re-sync them later when the link to A was found again.

The fix for this problem is to track the current set of links in each
clientTree and removing old links only AFTER all links are synced.

* p2p/dnsdisc: deflake iterator test

* cmd/devp2p: adapt dnsClient to new p2p/dnsdisc API

* p2p/dnsdisc: tiny comment fix
2020-01-30 13:36:30 +02:00
..
abigen cmd: fix command help messages in modules (#20203) 2019-12-09 10:45:55 +01:00
bootnode Apply Turbo-Geth modifications to go-ethereum codebase 2019-11-01 21:52:03 +01:00
checkpoint-admin cmd: fix command help messages in modules (#20203) 2019-12-09 10:45:55 +01:00
clef cmd: fix command help messages in modules (#20203) 2019-12-09 10:45:55 +01:00
devp2p p2p/dnsdisc: add enode.Iterator API (#20437) 2020-01-30 13:36:30 +02:00
ethkey cmd: fix command help messages in modules (#20203) 2019-12-09 10:45:55 +01:00
evm cmd: fix command help messages in modules (#20203) 2019-12-09 10:45:55 +01:00
geth Make ComputeTxEnv public and reuse it in Retesteth and RpcDaemon (#309) 2020-01-15 20:13:47 +07:00
hack Collect data about Keccak256 invocations for evaluation of STARK proof sizes and performance (#315) 2020-01-15 17:33:36 +00:00
migrate Collect data about Keccak256 invocations for evaluation of STARK proof sizes and performance (#315) 2020-01-15 17:33:36 +00:00
p2psim Apply Turbo-Geth modifications to go-ethereum codebase 2019-11-01 21:52:03 +01:00
pics Ongoing changes in the db_walkthrough (#301) 2020-01-15 13:59:08 +00:00
puppeth apply post-rebase fixups 2019-12-03 16:27:57 +01:00
rlpdump Apply Turbo-Geth modifications to go-ethereum codebase 2019-11-01 21:52:03 +01:00
rpcdaemon Make ComputeTxEnv public and reuse it in Retesteth and RpcDaemon (#309) 2020-01-15 20:13:47 +07:00
rpctest Thin history for storage (#324) 2020-01-15 17:55:43 +03:00
state Stateless Resolver: store and use witnesses for resolved subtries (#326) 2020-01-24 11:58:01 +01:00
tester Apply Turbo-Geth modifications to go-ethereum codebase 2019-11-01 21:52:03 +01:00
utils consensus/ethash, params: eip-2384: bump difficulty bomb (#20347) 2019-12-09 12:56:07 +01:00