Commit Graph

238 Commits

Author SHA1 Message Date
Michael Schmoock
75700ddc57 summary: remove legacy code 2020-08-01 17:03:41 +02:00
Michael Schmoock
294dc5dc20 summary: increase test coverage 2020-08-01 17:03:41 +02:00
Michael Schmoock
5a6489c3ae summary: moves availability code and adds testcases
extracts the availability calculations to own testable module
2020-08-01 17:03:41 +02:00
Michael Schmoock
01b075117f summary: set thread loglevel to just warn
using level error caused the testframework to fail on non-essential
price or availability thread log messages.

likely caused by the test runner not being able to query the bitstamp
API.
2020-08-01 17:03:41 +02:00
Michael Schmoock
14ad827fb8 summary: adds 72hr availability measurement
this applies a 72hr exponential smoothed sliding window to
the online/offline availability state of a peer.
2020-08-01 17:03:41 +02:00
Michael Schmoock
e484db385a summary: fix broken price API and other bugs
1. bitcoinaverage does not supply public prices since a while now:
>  Unauthenticated requests are not allowed. Take out a new plan or start
>   a free trial at https://pro.bitcoinaverage.com"
This commit fixes this by porting to bitstamp public ticker API.

2. This commit fixes the missing thread loop, so the price is
   actually updated after a while.

3. This commit fixes an unchecked attribute access that crashed during
   my tests.
2020-08-01 17:03:41 +02:00
Christian Decker
ded4f6b380 Update README.md 2020-07-03 11:42:19 +02:00
Antoine Poinsot
bd1459ab4e sauron: add Tor proxy support
Signed-off-by: Antoine Poinsot <darosior@protonmail.com>
2020-06-11 15:36:40 +02:00
svewa
04662336fa don't fund channels with more than 16777215sat, don't require confs on UTXOs to fund a channel 2020-06-11 13:17:34 +02:00
Michael Schmoock
6de448358a drain: refine tests 2020-06-11 13:16:01 +02:00
Michael Schmoock
0b685b45ea drain: fix a negative msat amount edgecase 2020-06-11 13:16:01 +02:00
Michael Schmoock
395577ec66 drain: utils - adds get_theirs helper 2020-06-11 13:16:01 +02:00
Michael Schmoock
4cb12a41cd rebalance: reduce some log output to debug 2020-06-11 13:16:01 +02:00
Michael Schmoock
30463bf169 drain: reduce some log output to debug 2020-06-11 13:16:01 +02:00
Michael Schmoock
bfc160b3c6 fix: typo on RpcError 2020-06-11 13:16:01 +02:00
Michael Schmoock
247ac99711 fix: make receivable_msat really optional for backwards compat 2020-06-11 13:16:01 +02:00
Sven
c37e0a4108 G.node -> G.nodes 2020-06-06 17:59:22 +02:00
Antoine Poinsot
2d2fa72ce6 prometheus: give short channel id for scid fiels, not long one
Also, if the channel isn't confirmed yet (no short_channel_id field),
    give the long channel id.

Signed-off-by: Antoine Poinsot <darosior@protonmail.com>
2020-06-05 17:54:28 +02:00
Antoine Poinsot
a155107857 jitrebalance: don't set result twice when we can't have a reverse chan
This also moves all logs to get_circular_route, as we have two ways of
returning None.

Signed-off-by: Antoine Poinsot <darosior@protonmail.com>
2020-06-02 11:59:12 +02:00
Antoine Poinsot
4fb91a6f45 jitrebalance: test failure cases
Signed-off-by: Antoine Poinsot <darosior@protonmail.com>
2020-06-02 11:59:12 +02:00
Antoine Poinsot
afebc21401 jitrebalance: if target scid errors, game is over
Signed-off-by: Antoine Poinsot <darosior@protonmail.com>
2020-06-02 11:59:12 +02:00
Antoine Poinsot
c5c24cb74a jitrebalance: assert l2 jit-rebalanced in test_simple_rebalance
Signed-off-by: Antoine Poinsot <darosior@protonmail.com>
2020-06-02 11:59:12 +02:00
Antoine Poinsot
e239fcdcc1 jitrebalance: test_issue_88 needs DEVELOPER too
Signed-off-by: Antoine Poinsot <darosior@protonmail.com>
2020-06-02 11:59:12 +02:00
Antoine Poinsot
815c382855 jitrebalance: use waitsendpay to wait for htlc resolution
This is a rebalance we initiated, so it's our payment

Signed-off-by: Antoine Poinsot <darosior@protonmail.com>
2020-06-02 11:59:12 +02:00
Antoine Poinsot
e11fe21dcb jitrebalance: add a configurable timeout to stop trying to rebalance
Signed-off-by: Antoine Poinsot <darosior@protonmail.com>
2020-06-02 11:59:12 +02:00
Antoine Poinsot
7d900c952b jitrebalance: log on success, don't log the onion
Signed-off-by: Antoine Poinsot <darosior@protonmail.com>
2020-06-02 11:59:12 +02:00
Antoine Poinsot
61c97e11ef jitrebalance: try as much routes as possible; don't stop at 5
Signed-off-by: Antoine Poinsot <darosior@protonmail.com>
2020-06-02 11:59:12 +02:00
Antoine Poinsot
bee26113c0 jitrebalance: don't assume that 'listchannels' results contains 2 entries
Signed-off-by: Antoine Poinsot <darosior@protonmail.com>
2020-05-27 14:51:28 +02:00
Antoine Poinsot
386d4eaa6d jitrebalance: handle the absence of the 'erring_channel' field
On failed 'sendpay'.

Signed-off-by: Antoine Poinsot <darosior@protonmail.com>
2020-05-27 14:51:28 +02:00
Antoine Poinsot
18632df38c jitrebalance: add the direction of erring channel on failed sendpay
Signed-off-by: Antoine Poinsot <darosior@protonmail.com>
2020-05-27 14:51:28 +02:00
Christian Decker
d34cb6e637 jitrebalance: Do not attempt to access scid on unconfirmed channels
Fixes #88
2020-05-27 12:34:57 +02:00
Christian Decker
9ebc175542 jitrebalance: Fix error when computing negative msat amounts 2020-05-27 12:34:57 +02:00
Christian Decker
18d03962df jitrebalance: Add a test to reproduce issue #88
I'm expecting it to be because we access the short_channel_id
indiscriminately, which is unsafe if the channel is not confirmed yet, i.e.,
it doesn't have a scid yet.
2020-05-27 12:34:57 +02:00
Christian Decker
f852851184 travis: Try to get coverage reporting inside the plugins working 2020-05-27 12:34:57 +02:00
Michael Schmoock
920f414ab0 drain: adds test cases 2020-05-23 13:38:01 +02:00
Michael Schmoock
9579baa186 drain: fix error handling 2020-05-23 13:38:01 +02:00
Michael Schmoock
d66ea9f8e5 drain: refactor and cleanup 2020-05-23 13:38:01 +02:00
Michael Schmoock
6f0380bdfb drain: fix receivable and 3ksat margin workaround 2020-05-23 13:38:01 +02:00
Michael Schmoock
eaee585f16 drain: fix zero division edge cases 2020-05-23 13:38:01 +02:00
Michael Schmoock
d1559bed1d doc: adds README entry for drain 2020-05-23 13:38:01 +02:00
Michael Schmoock
7edf97ed43 doc: specify writing and running tests 2020-05-23 13:38:01 +02:00
Christian Decker
b8836f7ece autoreload: Abort if we can't locate the child plugin 2020-05-18 22:44:49 +02:00
Christian Decker
e8945237d4 travis: Reduce verbosity and reduce timeout 2020-05-18 22:44:49 +02:00
Christian Decker
a1f005012a backup: Perform preflight checks before entering the plugin loop 2020-05-18 22:44:49 +02:00
Christian Decker
fbc494ec23 backup: Kill lightningd instead of the roundabout way around
Looking up the process parents and searching for `lightnignd` allows us to
kill directly. It also means we no longer have to wait for the RPC to be
enabled to abort.
2020-05-18 22:44:49 +02:00
Christian Decker
63c9872ec2 autoreload: Add tests and warning when manifest changes
Rene pointed out that we were silently accepting an updated manifest despite
not actually being able to register it with `lightningd`. This meant that if
options, RPC methods, hooks or notifications get added or removed they will
not be wired in correctly.

The warning is really obnoxious and multi-line to draw the attention.

Suggested-by: Rene Pickhardt <@renepickhardt>
2020-05-18 22:44:49 +02:00
Christian Decker
8668a2244d noise: Disabled retry test for being way too flaky 2020-05-18 22:44:49 +02:00
Christian Decker
9b5a9076d4 backup: Fix flaky test due to logs being dropped on shutdown
We were writing logs directly before killing `lightningd` which resulted in
the logs being lost. The subsequent check for the log-lines then would fail
obviously.
2020-05-18 22:44:49 +02:00
Christian Decker
162b5cc977 persistent-channels: Use the correct parameter name
Some time ago we switched from `satoshi` to `amount` encoded as a suffixed
amount.
2020-05-18 22:44:49 +02:00
Sebastian Geisler
9a1cf235d3 Add forwarding and fee metrics 2020-05-15 16:47:29 +02:00