channeldb/db: prevent filtering channels with unconfirmed close txs
In this commit, we address an issue with the FetchWaitingCloseChannels method where it would not properly return channels that are unconfirmed and also have an unconfirmed closing transaction because they were filtered out. We fix this by fetching channels that remain unconfirmed that are also waiting for a confirmed closing transaction. This will allow the recently added test TestFetchWaitingCloseChannels to pass.
This commit is contained in:
parent
409efd1361
commit
70d3fc640a
@ -450,9 +450,20 @@ func (d *DB) FetchPendingChannels() ([]*OpenChannel, error) {
|
||||
}
|
||||
|
||||
// FetchWaitingCloseChannels will return all channels that have been opened,
|
||||
// but now is waiting for a closing transaction to be confirmed.
|
||||
// but are now waiting for a closing transaction to be confirmed.
|
||||
//
|
||||
// NOTE: This includes channels that are also pending to be opened.
|
||||
func (d *DB) FetchWaitingCloseChannels() ([]*OpenChannel, error) {
|
||||
return fetchChannels(d, false, true)
|
||||
waitingClose, err := fetchChannels(d, false, true)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
pendingWaitingClose, err := fetchChannels(d, true, true)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return append(waitingClose, pendingWaitingClose...), nil
|
||||
}
|
||||
|
||||
// fetchChannels attempts to retrieve channels currently stored in the
|
||||
|
Loading…
Reference in New Issue
Block a user