mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-07-05 05:02:06 +02:00
Merge bitcoin/bitcoin#22098: [test, init] DNS seed querying logic
82b6f89819
[style] Small style improvements to DNS parameters (Amiti Uttarwar)4c89e24f64
[test] Test the delay before querying DNS seeds (Amiti Uttarwar)6395c8ed56
[test] Test the interactions between -forcednsseed and -dnsseed (Amiti Uttarwar)6f6b7df6bd
[init] Disallow starting up with conflicting paramters for -dnsseed and -forcednsseed (Amiti Uttarwar)26d0ffe4f2
[test] Test -forcednsseed causes querying DNS seeds (Amiti Uttarwar)35851450a9
[test] Test the interactions between -connect and -dnsseed (Amiti Uttarwar)75c05af361
[test] Test logic to query DNS seeds with block-relay-only connections (Amiti Uttarwar)9c08719778
[test] Introduce test logic to query DNS seeds (Amiti Uttarwar) Pull request description: This PR adds a DNS seed to the regtest chain params to enable testing the DNS seed querying logic of `CConnman::ThreadDNSAddressSeed` and relevant startup parameters. Adds coverage for the changes in #22013 (and then some). The main behavioral change to bitcoind is that this PR disallows starting up with conflicting parameters for `-dnsseed` and `-forcednsseed`. The tests include: * parameter interactions of different combinations of `-connect`, `-dnsseed` and `-forcednsseed` * the delay before querying DNS seeds depending on how many addresses are in the addrman * the behavior of `-forcednsseed` * skipping DNS querying if we have outbound full relay connections & not block-relay-only connections Huge props to mzumsande for identifying the timing technique for testing successful connections before running `ThreadDNSAddressSeed` 🙌🏽 ACKs for top commit: mzumsande: ACK82b6f89819
jnewbery: reACK82b6f89819
Tree-SHA512: 9f0c29bfbf99426727e79c0a25606ae09deab91a92e3c5cee7f84c3ca7503a8ac9ab85a85c51841d40b164ef8c991326070f0b2f41d075fb7985df26f6e95d6d
This commit is contained in:
@ -159,8 +159,9 @@ class ConfArgsTest(BitcoinTestFramework):
|
||||
self.stop_node(0)
|
||||
|
||||
# No peers.dat exists and -dnsseed=1
|
||||
# We expect the node will use DNS Seeds, but Regtest mode has 0 DNS seeds
|
||||
# So after 60 seconds, the node should fallback to fixed seeds (this is a slow test)
|
||||
# We expect the node will use DNS Seeds, but Regtest mode does not have
|
||||
# any valid DNS seeds. So after 60 seconds, the node should fallback to
|
||||
# fixed seeds
|
||||
assert not os.path.exists(os.path.join(default_data_dir, "peers.dat"))
|
||||
start = int(time.time())
|
||||
with self.nodes[0].assert_debug_log(expected_msgs=[
|
||||
|
Reference in New Issue
Block a user