Commit Graph

10270 Commits

Author SHA1 Message Date
95634186c2 lntest/itest: move harness to new file
This in prep for a bigger move in the next commit.
2020-09-21 21:16:30 +02:00
98da919bf1 Merge pull request #4622 from guggero/config-mkdir
config: create all directories
2020-09-18 14:32:28 -04:00
6ae05c6bac Merge pull request #4592 from joostjager/sweep-deadline
cnct+sweep: cpfp-aware anchor sweeping
2020-09-18 20:15:03 +02:00
111db801e7 Merge pull request #4457 from bhandras/etcd_tx_queue
etcd: STM transaction queue to effectively reduce retries for conflicting transactions
2020-09-17 17:35:59 +02:00
ae7d69838e Merge pull request #4625 from guggero/letsencrypt-listen
lnd+config: allow Let's Encrypt listen IP to be set
2020-09-17 14:55:30 +02:00
26effca761 build: unit test on github with kvdb_etcd tag 2020-09-17 14:50:19 +02:00
357cd7d7a7 make: allow optional extra tags when running unit tests 2020-09-17 14:50:19 +02:00
9c47392dfa etcd: integrate the commitQueue to the STM commit loop
This commit integrates an externally passed commitQueue instance with
the STM to reduce retries for conflicting transactions.
2020-09-17 14:50:19 +02:00
6f3a45b75f etcd: make embedded etcd context cancelable 2020-09-17 14:50:18 +02:00
281c0b9d92 etcd: add commit queue to effectively reduce transaction retries
This commit adds commitQueue which is a lightweight contention manager
for STM transactions. The queue attempts to queue up transactions that
conflict for sequential execution, while leaving all "unblocked"
transactons to run freely in parallel.
2020-09-17 14:50:18 +02:00
b4b5a9d7de etcd: increase message and transaction limits for embedded etcd 2020-09-17 14:50:14 +02:00
01ff012631 Merge pull request #4624 from mayankchhabra/patch-1
docs: remove duplicate "tor.streamisolation" option from sample-lnd.conf
2020-09-17 14:21:31 +02:00
d33ddffca4 sample-lnd.conf: change letsencryptport to letsencryptlisten 2020-09-17 12:31:01 +02:00
29602e88e8 cnct: cpfp-sweep anchors
For unconfirmed commit tx anchors, supply the sweeper with cpfp info and
a confirmation target fee estimate.

The sweeper will try to pay for the parent commit tx as long as the
current fee estimate exceeds the pre-signed commit tx fee rate.
2020-09-17 12:30:41 +02:00
681496b474 sweep: make sweeper aware of unconfirmed parent transactions.
Extend the fee estimator to take into account parent transactions with
their weights and fees.

Do not try to cpfp parent transactions that have a higher fee rate than
the sweep tx fee rate.
2020-09-17 12:30:39 +02:00
85c2103f44 Merge pull request #4436 from yyforyongyu/accept-base-pubkey
signrpc: SharedKeyRequest accept raw pubkey
2020-09-17 11:38:00 +02:00
00cb6fcc5d lnd+config: allow Let's Encrypt listen IP to be set
To make it possible to request a Let's Encrypt certificate by using a
different IP address where the port 80 might still be free, we add the
IP part to its configuration as well instead of just the port.
This makes it possible to use an IPv6 address for the ACME request if
all available IPv4 addresses already have their port 80 occupied.
2020-09-17 09:54:23 +02:00
ac46f9a298 Remove duplicate tor.streamisolation option
This commit removes the duplicate tor.streamisolation option from `sample-lnd.conf` example config file (which was accidentally added in commit #104a9094980f31560ca269d3b01f000dd775778d)
2020-09-17 12:37:20 +05:30
d2d71476bd lntest: init SignerClient and test DeriveSharedKey 2020-09-17 14:52:36 +08:00
e62ae66510 config: create all directories
With this commit we make sure that all directories where lnd could
potentially want to write files to are created on startup. This fixes
the case where the lnddir isn't set but all other paths point to
explicit locations with non-existend parent directories.

We don't create the log dir as that's done by the log rotator already.
2020-09-17 08:50:44 +02:00
1c80f9818f signrpc: SharedKeyRequest accept raw pubkey 2020-09-17 10:14:54 +08:00
6efeee4d88 keychain: add missing KeyFamily type 2020-09-17 10:14:54 +08:00
d4d7533193 Merge pull request #4620 from halseth/txnotifier-panic
[bugfix] txnotifier: delete ntfn by confirm height always
2020-09-16 18:38:16 -04:00
a5c5304c09 Merge pull request #4452 from yyforyongyu/add-connection-timeout
lnrpc+tor: add network connection timeout
2020-09-16 12:28:29 -07:00
ab695cc305 Merge pull request #4623 from guggero/travis-log-upload-failure-only
travis: only upload log files on test failure
2020-09-16 12:22:07 -04:00
a93aaff2fd travis: only upload log files on test failure
To speed up tests and also not DoS termbin and file.io, we only upload
the integration test logs on failure.
2020-09-16 15:16:10 +02:00
3531c3fbbe Merge pull request #4602 from joostjager/proportional-attempt-cost
routing: proportional attempt cost
2020-09-16 14:12:19 +02:00
3e3d8487fb sweep: wrap weight estimator
Preparation for a cpfp-aware weight estimator. For cpfp, a regular
weight estimator isn't sufficient, because it needs to take into account
the weight of the parent transaction(s) as well.
2020-09-16 11:49:22 +02:00
2ebfb64b9b Merge pull request #4606 from joostjager/cpfp-sweep-prep
cnct+sweep+itest: preparations for cpfp-aware sweeper
2020-09-16 11:48:39 +02:00
df6606d37f txnotifier test: add test for confirmation after cancellation
This test addition would cause the txnotifier to crash prior to the
previous commit.
2020-09-16 11:23:02 +02:00
2665836fa3 txnotifier: delete ntfn by confirm height always
When we cancel a confirmation request, we should remove the request from
the height map regardless of the current height. Otherwise we end up in
the situation when the height is reached, the notification is attempted
sent which results in a crash.
2020-09-16 11:20:37 +02:00
3a12b5867f txnotifier test: use Cancel() directly 2020-09-16 11:19:53 +02:00
08bb8ec54e cnct: clear exclusive group on anchor sweep after confirmation
The sweeper call UpdateParams does not update the exclusive group
property of a pending sweep. This led to anchor outputs being swept
after confirmation with an exclusive group restriction, which is not
necessary.

This commit changes the anchor resolver to not use UpdateParams anymore,
but instead always re-offer the anchor input to the sweeper. The sweeper
is modified so that a re-offering also updates the sweep parameters.
2020-09-16 08:17:40 +02:00
6df4fa84df sweep: clean up state mutation
The add function tries to add an input to the current set. It therefore
calculates what the new set would look like before actually adding. This
commit isolates the state of the tentative set so that there is less
opportunity for bugs to creep in.
2020-09-16 08:17:38 +02:00
cdbde5dd4c sweep: do not combine exclusive and non-exclusive inputs 2020-09-16 08:17:36 +02:00
b6ebf3f27d lntest: use web fee estimator in itests 2020-09-16 08:17:34 +02:00
245db6a7fe rpcserver: fix make lint 2020-09-16 12:08:46 +08:00
e8d9643f3a itest: test for connection timeout 2020-09-16 11:50:59 +08:00
469aba9282 lnd+rpcserver: allow customized timeout in ConnectPeer 2020-09-16 11:50:04 +08:00
ef38b12fda multi: use timeout field in dialer 2020-09-16 11:50:04 +08:00
fb67b58d3f brontide+tor:add timeout value for network connections 2020-09-16 11:50:03 +08:00
9dcb522ebc Merge pull request #4618 from Roasbeef/healthcheck-bsd
healtcheck: add extra build tags+files for netbsd and openbsd
2020-09-15 18:54:02 -07:00
9887b2d731 healtcheck: add extra build tags+files for netbsd and openbsd
Without these changes, the disk check portions won't compile on these
platforms.
2020-09-15 18:26:11 -07:00
fa342a1230 Merge pull request #4567 from calvinrzachman/max-wumbo
add new max channel size config option
2020-09-15 15:31:47 -07:00
fe1d131ea4 Merge pull request #4615 from carlaKC/healthcheck-disabledisk
config: disable disk space health check by default
2020-09-15 20:31:40 +02:00
b8eb41f947 Merge pull request #4591 from hsjoberg/walletloader-unload
lnd: Call loader.UnloadWallet on shutdown
2020-09-15 13:54:46 +02:00
cf6eee80db Merge pull request #2428 from joostjager/letsencrypt
lnrpc: let's encrypt certificates
2020-09-15 13:08:15 +02:00
fc3fd26a3d config: allow web fee estimation on regtest 2020-09-15 10:29:14 +02:00
904055cf4f Merge pull request #4601 from guggero/psbt-final-tx-raw
PSBT funding: allow final TX to be specified as raw wire format transaction
2020-09-15 10:07:52 +02:00
403d72b468 lnrpc: lets encrypt
This commit enables lnd to request and renew a Let's Encrypt
certificate. This certificate is used both for the grpc as well as the
rest listeners. It allows clients to connect without having a copy of
the (public) server certificate.

Co-authored-by: Vegard Engen <vegard@engen.priv.no>
2020-09-15 09:59:09 +02:00