Merge pull request #7095 from yyforyongyu/funding-locked

funding: wait for one sec if funding locked is not received
This commit is contained in:
Oliver Gugger 2022-11-02 09:27:41 +01:00 committed by GitHub
commit ae6006a84e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 13 additions and 1 deletions

View File

@ -149,6 +149,10 @@ certain large transactions](https://github.com/lightningnetwork/lnd/pull/7100).
so that the user can specify fees during channel creation time in addition
to the default configuration.
* [Sleep for one second when funding locked message is not
received](https://github.com/lightningnetwork/lnd/pull/7095) to avoid CPU
spike.
## Code Health
* [test: use `T.TempDir` to create temporary test

View File

@ -1021,7 +1021,14 @@ func (f *Manager) stateStep(channel *channeldb.OpenChannel,
if !received {
// We haven't received FundingLocked, so we'll continue
// to the next iteration of the loop.
// to the next iteration of the loop after sleeping for
// one second.
select {
case <-time.After(1 * time.Second):
case <-f.quit:
return ErrFundingManagerShuttingDown
}
return nil
}
@ -2952,6 +2959,7 @@ func (f *Manager) receivedFundingLocked(node *btcec.PublicKey,
// Avoid a tight loop if peer is offline.
if _, err := f.waitForPeerOnline(node); err != nil {
log.Errorf("Wait for peer online failed: %v", err)
return false, err
}