Merge pull request #5258 from wpaulino/validation-barrier-err-deadlock

routing: return err on validation barrier failure of network update
This commit is contained in:
Conner Fromknecht 2021-05-04 10:44:08 -07:00 committed by GitHub
commit af289a180c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 13 additions and 5 deletions

@ -1031,7 +1031,8 @@ func (d *AuthenticatedGossiper) networkHandler() {
announcement.msg,
)
if err != nil {
if err != routing.ErrVBarrierShuttingDown {
if err != routing.ErrVBarrierShuttingDown &&
err != routing.ErrParentValidationFailed {
log.Warnf("unexpected error "+
"during validation "+
"barrier shutdown: %v",
@ -1561,7 +1562,7 @@ func (d *AuthenticatedGossiper) processNetworkAnnouncement(
routing.ErrIgnored) {
log.Debug(err)
} else {
} else if err != routing.ErrVBarrierShuttingDown {
log.Error(err)
}
@ -2042,7 +2043,7 @@ func (d *AuthenticatedGossiper) processNetworkAnnouncement(
if routing.IsError(err, routing.ErrOutdated,
routing.ErrIgnored) {
log.Debug(err)
} else {
} else if err != routing.ErrVBarrierShuttingDown {
d.rejectMtx.Lock()
d.recentRejects[msg.ShortChannelID.ToUint64()] = struct{}{}
d.rejectMtx.Unlock()

@ -1038,12 +1038,19 @@ func (r *ChannelRouter) networkHandler() {
update.msg,
)
if err != nil {
if err != ErrVBarrierShuttingDown &&
err != ErrParentValidationFailed {
switch err {
case ErrVBarrierShuttingDown:
update.err <- err
case ErrParentValidationFailed:
update.err <- newErrf(
ErrIgnored, err.Error(),
)
default:
log.Warnf("unexpected error "+
"during validation "+
"barrier shutdown: %v",
err)
update.err <- err
}
return
}