mirror of
https://github.com/lightningnetwork/lnd.git
synced 2025-03-27 18:22:24 +01:00
funding: fix itest flake with pending channels
This commit is contained in:
parent
2ddf079889
commit
3f6315242a
@ -108,6 +108,11 @@ const (
|
||||
// for the funding transaction to be confirmed before forgetting
|
||||
// channels that aren't initiated by us. 2016 blocks is ~2 weeks.
|
||||
maxWaitNumBlocksFundingConf = 2016
|
||||
|
||||
// pendingChansLimit is the maximum number of pending channels that we
|
||||
// can have. After this point, pending channel opens will start to be
|
||||
// rejected.
|
||||
pendingChansLimit = 1_000
|
||||
)
|
||||
|
||||
var (
|
||||
@ -1320,6 +1325,25 @@ func (f *Manager) handleFundingOpen(peer lnpeer.Peer,
|
||||
return
|
||||
}
|
||||
|
||||
// Ensure that the pendingChansLimit is respected.
|
||||
pendingChans, err := f.cfg.Wallet.Cfg.Database.FetchPendingChannels()
|
||||
if err != nil {
|
||||
f.failFundingFlow(
|
||||
peer, msg.PendingChannelID, err,
|
||||
)
|
||||
|
||||
return
|
||||
}
|
||||
|
||||
if len(pendingChans) > pendingChansLimit {
|
||||
f.failFundingFlow(
|
||||
peer, msg.PendingChannelID,
|
||||
lnwire.ErrMaxPendingChannels,
|
||||
)
|
||||
|
||||
return
|
||||
}
|
||||
|
||||
// We'll also reject any requests to create channels until we're fully
|
||||
// synced to the network as we won't be able to properly validate the
|
||||
// confirmation of the funding transaction.
|
||||
|
Loading…
x
Reference in New Issue
Block a user