lnd.xprv/htlcswitch
Olaoluwa Osuntokun fa160f559c
multi: replace per channel sigPool with global daemon level sigPool
In this commit, we remove the per channel `sigPool` within the
`lnwallet.LightningChannel` struct. With this change, we ensure that as
the number of channels grows, the number of gouroutines idling in the
sigPool stays constant. It's the case that currently on the daemon, most
channels are likely inactive, with only a hand full actually
consistently carrying out channel updates. As a result, this change
should reduce the amount of idle CPU usage, as we have less active
goroutines in select loops.

In order to make this change, the `SigPool` itself has been publicly
exported such that outside callers can make a `SigPool` and pass it into
newly created channels. Since the sig pool now lives outside the
channel, we were also able to do away with the Stop() method on the
channel all together.

Finally, the server is the sub-system that is currently responsible for
managing the `SigPool` within lnd.
2018-12-16 15:40:14 -08:00
..
hodl htlcswitch/hodl: switch from debug tag to dev 2018-10-05 13:04:45 +09:00
circuit_map.go multi: switch from bolt packge to bbolt package for all imports 2018-11-29 20:33:49 -08:00
circuit_test.go multi: update to go 1.11 gofmt 2018-10-07 14:37:38 +09:00
circuit.go multi: fix various typos in comments 2018-09-07 06:51:49 +02:00
control_tower_test.go htlcswitch/control_tower_test: test strict and non-strict ctrltwrs 2018-08-21 19:23:25 -07:00
control_tower.go multi: switch from bolt packge to bbolt package for all imports 2018-11-29 20:33:49 -08:00
decayedlog_test.go htlcswitch/decayedlog_test: fix bug in gc unit test 2018-06-27 14:40:28 -07:00
decayedlog.go multi: switch from bolt packge to bbolt package for all imports 2018-11-29 20:33:49 -08:00
failure.go multi: sort import paths with gofmt 2018-08-02 18:20:49 -07:00
interfaces.go multi: switch over import paths from roasbeef/* to btcsuite/* 2018-07-13 17:05:39 -07:00
iterator.go multi: sort import paths with gofmt 2018-08-02 18:20:49 -07:00
link_test.go multi: replace per channel sigPool with global daemon level sigPool 2018-12-16 15:40:14 -08:00
link.go multi: replace per channel sigPool with global daemon level sigPool 2018-12-16 15:40:14 -08:00
linkfailure.go htlcswitch/linkfailure: define LinkFailureError 2018-05-25 06:58:18 +02:00
log.go multi: init subsystem loggers via build pkg 2018-10-05 13:04:45 +09:00
mailbox_test.go htlcswitch/mailbox_test: add orchestrator pending/live test 2018-05-09 16:07:52 -07:00
mailbox.go multi: 64bit aligment of atomic vars on arm/x86-32 2018-06-04 20:02:34 -07:00
mock.go htlcswitch+discovery mock: adhere to new lnpeer interface 2018-09-28 09:05:18 +02:00
packet.go htlcswitch: remove no longer needed destNode field in htlcPacket 2018-08-20 21:04:52 -07:00
queue_test.go htlcswitch: Remove obsolete fields from htlcPacket. 2017-12-14 17:53:58 -08:00
queue.go htlcswitch: ensure the packet queue exits on stop 2018-06-08 13:51:37 -07:00
sequencer.go multi: switch from bolt packge to bbolt package for all imports 2018-11-29 20:33:49 -08:00
switch_test.go htlcswitch: add test for integrated control tower 2018-08-21 19:23:22 -07:00
switch.go multi: switch from bolt packge to bbolt package for all imports 2018-11-29 20:33:49 -08:00
test_utils.go multi: replace per channel sigPool with global daemon level sigPool 2018-12-16 15:40:14 -08:00