From 38862d3b910d9de71ac72db9798412a16f3c3564 Mon Sep 17 00:00:00 2001 From: Elle Mouton Date: Sat, 16 Nov 2024 09:43:18 +0200 Subject: [PATCH] server: remove `shouldPeerBootstrap` We already set `nobootstrap` in the default node flags for itest nodes, so we can remove this check now. This will allow us to later test bootstrapping in an itest. NOTE that with this change, any signet/simnet/regtest network users will now need to explicitly add the `--nobootstrap` flag if they want to prevent automatic bootstrapping. This warning is added to the release notes later on. --- server.go | 16 +--------- server_test.go | 82 -------------------------------------------------- 2 files changed, 1 insertion(+), 97 deletions(-) delete mode 100644 server_test.go diff --git a/server.go b/server.go index 47d1eaaf4..d8d1f4422 100644 --- a/server.go +++ b/server.go @@ -2644,7 +2644,7 @@ func (s *server) Start(ctx context.Context) error { // configure the set of active bootstrappers, and launch a // dedicated goroutine to maintain a set of persistent // connections. - if shouldPeerBootstrap(s.cfg) { + if !s.cfg.NoNetBootstrap { bootstrappers, err := initNetworkBootstrappers(s) if err != nil { startErr = err @@ -5378,20 +5378,6 @@ func newSweepPkScriptGen( } } -// shouldPeerBootstrap returns true if we should attempt to perform peer -// bootstrapping to actively seek our peers using the set of active network -// bootstrappers. -func shouldPeerBootstrap(cfg *Config) bool { - isSimnet := cfg.Bitcoin.SimNet - isSignet := cfg.Bitcoin.SigNet - isRegtest := cfg.Bitcoin.RegTest - isDevNetwork := isSimnet || isSignet || isRegtest - - // TODO(yy): remove the check on simnet/regtest such that the itest is - // covering the bootstrapping process. - return !cfg.NoNetBootstrap && !isDevNetwork -} - // fetchClosedChannelSCIDs returns a set of SCIDs that have their force closing // finished. func (s *server) fetchClosedChannelSCIDs() map[lnwire.ShortChannelID]struct{} { diff --git a/server_test.go b/server_test.go deleted file mode 100644 index 78866d598..000000000 --- a/server_test.go +++ /dev/null @@ -1,82 +0,0 @@ -package lnd - -import ( - "testing" - - "github.com/lightningnetwork/lnd/lncfg" -) - -// TestShouldPeerBootstrap tests that we properly skip network bootstrap for -// the developer networks, and also if bootstrapping is explicitly disabled. -func TestShouldPeerBootstrap(t *testing.T) { - t.Parallel() - - testCases := []struct { - cfg *Config - shouldBoostrap bool - }{ - // Simnet active, no bootstrap. - { - cfg: &Config{ - Bitcoin: &lncfg.Chain{ - SimNet: true, - }, - }, - }, - - // Regtest active, no bootstrap. - { - cfg: &Config{ - Bitcoin: &lncfg.Chain{ - RegTest: true, - }, - }, - }, - - // Signet active, no bootstrap. - { - cfg: &Config{ - Bitcoin: &lncfg.Chain{ - SigNet: true, - }, - }, - }, - - // Mainnet active, but bootstrap disabled, no bootstrap. - { - cfg: &Config{ - Bitcoin: &lncfg.Chain{ - MainNet: true, - }, - NoNetBootstrap: true, - }, - }, - - // Mainnet active, should bootstrap. - { - cfg: &Config{ - Bitcoin: &lncfg.Chain{ - MainNet: true, - }, - }, - shouldBoostrap: true, - }, - - // Testnet active, should bootstrap. - { - cfg: &Config{ - Bitcoin: &lncfg.Chain{ - TestNet3: true, - }, - }, - shouldBoostrap: true, - }, - } - for i, testCase := range testCases { - bootstrapped := shouldPeerBootstrap(testCase.cfg) - if bootstrapped != testCase.shouldBoostrap { - t.Fatalf("#%v: expected bootstrap=%v, got bootstrap=%v", - i, testCase.shouldBoostrap, bootstrapped) - } - } -}