routing+routerrpc: remove redudant error check

Since `SendPaymentAsync` now never returns an error, there's no need to
catch it and check it in `SendPaymentV2`.
This commit is contained in:
yyforyongyu 2024-01-05 18:11:04 +08:00
parent 708bd05df3
commit 58677569b5
No known key found for this signature in database
GPG Key ID: 9BCD95C4FF296868
2 changed files with 7 additions and 26 deletions

View File

@ -347,30 +347,13 @@ func (s *Server) SendPaymentV2(req *SendPaymentRequest,
return err
}
// Send the payment.
err = s.cfg.Router.SendPaymentAsync(payment, paySession, shardTracker)
if err == nil {
// If the payment was sent successfully, we can start tracking
// the events.
return s.trackPayment(
sub, payHash, stream, req.NoInflightUpdates,
)
}
// Send the payment asynchronously.
s.cfg.Router.SendPaymentAsync(payment, paySession, shardTracker)
// Otherwise, transform user errors to grpc code.
if errors.Is(err, channeldb.ErrPaymentInFlight) ||
errors.Is(err, channeldb.ErrAlreadyPaid) {
log.Debugf("SendPayment async result for payment %x: %v",
payment.Identifier(), err)
return status.Error(codes.AlreadyExists, err.Error())
}
log.Errorf("SendPayment async error for payment %x: %v",
payment.Identifier(), err)
return err
// Track the payment and return.
return s.trackPayment(
sub, payHash, stream, req.NoInflightUpdates,
)
}
// EstimateRouteFee allows callers to obtain a lower bound w.r.t how much it

View File

@ -2386,7 +2386,7 @@ func (r *ChannelRouter) SendPayment(payment *LightningPayment) ([32]byte,
// SendPaymentAsync is the non-blocking version of SendPayment. The payment
// result needs to be retrieved via the control tower.
func (r *ChannelRouter) SendPaymentAsync(payment *LightningPayment,
ps PaymentSession, st shards.ShardTracker) error {
ps PaymentSession, st shards.ShardTracker) {
// Since this is the first time this payment is being made, we pass nil
// for the existing attempt.
@ -2406,8 +2406,6 @@ func (r *ChannelRouter) SendPaymentAsync(payment *LightningPayment,
payment.Identifier(), err)
}
}()
return nil
}
// spewPayment returns a log closures that provides a spewed string