mirror of
https://github.com/lightningnetwork/lnd.git
synced 2025-04-16 16:01:04 +02:00
Merge pull request #8346 from yyforyongyu/remove-error-return
routing+routerrpc: remove redudant error check
This commit is contained in:
commit
7cb53020ee
@ -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
|
||||
@ -889,10 +872,17 @@ func (s *Server) trackPayment(subscription routing.ControlTowerSubscriber,
|
||||
stream.Context(), subscription, noInflightUpdates, stream.Send,
|
||||
)
|
||||
|
||||
// If the context is canceled, we don't return an error.
|
||||
if errors.Is(err, context.Canceled) {
|
||||
log.Debugf("Payment stream %v canceled", identifier)
|
||||
log.Infof("Payment stream %v canceled", identifier)
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
// Otherwise, we will log and return the error as the stream has
|
||||
// received an error from the payment lifecycle.
|
||||
log.Errorf("TrackPayment got error for payment %x: %v", identifier, err)
|
||||
|
||||
return err
|
||||
}
|
||||
|
||||
|
@ -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
|
||||
|
Loading…
x
Reference in New Issue
Block a user