|
47 | 47 | errOnlyStartOnce = fmt.Errorf("daemon can only be started once") |
48 | 48 | ) |
49 | 49 |
|
| 50 | +// shouldReportManagerErr determines whether a manager error should be forwarded |
| 51 | +// to the internal error channel. Context cancellations are treated as |
| 52 | +// non-fatal. |
| 53 | +func shouldReportManagerErr(err error) bool { |
| 54 | + return err != nil && !errors.Is(err, context.Canceled) |
| 55 | +} |
| 56 | + |
50 | 57 | // ListenerCfg holds closures used to retrieve listeners for the gRPC services. |
51 | 58 | type ListenerCfg struct { |
52 | 59 | // grpcListener returns a TLS listener to use for the gRPC server, based |
@@ -892,7 +899,7 @@ func (d *Daemon) initialize(withMacaroonService bool) error { |
892 | 899 | defer infof("Static address manager stopped") |
893 | 900 |
|
894 | 901 | err := staticAddressManager.Run(d.mainCtx, initChan) |
895 | | - if err != nil && !errors.Is(err, context.Canceled) { |
| 902 | + if shouldReportManagerErr(err) { |
896 | 903 | d.internalErrChan <- err |
897 | 904 | } |
898 | 905 | }() |
@@ -924,7 +931,7 @@ func (d *Daemon) initialize(withMacaroonService bool) error { |
924 | 931 | defer infof("Static address deposit manager stopped") |
925 | 932 |
|
926 | 933 | err := depositManager.Run(d.mainCtx, initChan) |
927 | | - if err != nil && !errors.Is(err, context.Canceled) { |
| 934 | + if shouldReportManagerErr(err) { |
928 | 935 | d.internalErrChan <- err |
929 | 936 | } |
930 | 937 | }() |
@@ -956,7 +963,7 @@ func (d *Daemon) initialize(withMacaroonService bool) error { |
956 | 963 | defer infof("Static address withdrawal manager stopped") |
957 | 964 |
|
958 | 965 | err := withdrawalManager.Run(d.mainCtx, initChan) |
959 | | - if err != nil && !errors.Is(err, context.Canceled) { |
| 966 | + if shouldReportManagerErr(err) { |
960 | 967 | d.internalErrChan <- err |
961 | 968 | } |
962 | 969 | }() |
@@ -992,7 +999,7 @@ func (d *Daemon) initialize(withMacaroonService bool) error { |
992 | 999 | infof("Starting static address loop-in manager...") |
993 | 1000 | defer infof("Static address loop-in manager stopped") |
994 | 1001 | err := staticLoopInManager.Run(d.mainCtx, initChan) |
995 | | - if err != nil && !errors.Is(err, context.Canceled) { |
| 1002 | + if shouldReportManagerErr(err) { |
996 | 1003 | d.internalErrChan <- err |
997 | 1004 | } |
998 | 1005 | }() |
|
0 commit comments