9519 Commits

Author SHA1 Message Date
Olaoluwa Osuntokun
ae6e84ddfd
build: bump version to v0.10.1-beta.rc2 v0.10.1-beta.rc2 2020-05-21 17:26:15 -07:00
Olaoluwa Osuntokun
d764cc8fbf Merge branch 'v0.10.1-beta-4302' into v0.10.1-beta-rc2-branch 2020-05-21 17:24:08 -07:00
Wilmer Paulino
c45b2387c2 btcwallet: add transaction outputs bounds check to FetchInputInfo
This prevents a panic when providing an incompatible output index for
the transaction.
2020-05-21 17:23:23 -07:00
Olaoluwa Osuntokun
e883304279
build: bump version to v0.10.1-beta.rc1 v0.10.1-beta.rc1 2020-05-18 19:28:34 -07:00
Olaoluwa Osuntokun
2c789d92d3 Merge branch 'v0.10.1-beta-4291' into v0.10.1-beta-rc1-branch 2020-05-18 19:26:35 -07:00
Wilmer Paulino
adbbde6f31 build: update to latest btcd and btcwallet versions
This update introduces backwards compatibility for btcd nodes running
versions prior to v0.20.1-beta.
2020-05-18 19:26:08 -07:00
Olaoluwa Osuntokun
580d478cd3 Merge branch 'v0.10.1-beta-4226' into v0.10.1-beta-rc1-branch 2020-05-18 19:25:27 -07:00
Roei Erez
e52982fd0b Ensure chain notifier is started before accessed.
The use case comes from the RPC layer that is ready before the
chain notifier which is used in the sub server.
2020-05-18 19:25:27 -07:00
Roei Erez
470537ec3a chainntnfs: use sync.Once to start notifiers. 2020-05-18 19:25:27 -07:00
Olaoluwa Osuntokun
d63198a792 Merge branch 'v0.10.1-beta-4277' into v0.10.1-beta-rc1-branch 2020-05-18 19:25:15 -07:00
Joost Jager
d914f55e2c lnwallet: return signer error 2020-05-18 19:25:15 -07:00
Olaoluwa Osuntokun
35c23a9d85 Merge branch 'v0.10.1-beta-4274' into v0.10.1-beta-rc1-branch 2020-05-18 19:24:53 -07:00
Wilmer Paulino
0c13b29a0e wtmock: prevent race conditions by not using ClientSession pointers
These race conditions originate from the mock database storing and
returning pointers, rather than returning a copy.

Observed on Travis:

WARNING: DATA RACE
Read at 0x00c0003222b8 by goroutine 149:
  github.com/lightningnetwork/lnd/watchtower/wtclient.(*sessionQueue).drainBackups()
      /home/runner/work/lnd/lnd/watchtower/wtclient/session_queue.go:288 +0xed
  github.com/lightningnetwork/lnd/watchtower/wtclient.(*sessionQueue).sessionManager()
      /home/runner/work/lnd/lnd/watchtower/wtclient/session_queue.go:281 +0x450

Previous write at 0x00c0003222b8 by goroutine 93:
  github.com/lightningnetwork/lnd/watchtower/wtclient.getClientSessions()
      /home/runner/work/lnd/lnd/watchtower/wtclient/client.go:365 +0x24f
  github.com/lightningnetwork/lnd/watchtower/wtclient.(*TowerClient).handleNewTower()
      /home/runner/work/lnd/lnd/watchtower/wtclient/client.go:1063 +0x23e
  github.com/lightningnetwork/lnd/watchtower/wtclient.(*TowerClient).backupDispatcher()
      /home/runner/work/lnd/lnd/watchtower/wtclient/client.go:784 +0x10b9
2020-05-18 19:24:52 -07:00
Wilmer Paulino
3afa4178ba wtclient: test case re-add removed tower 2020-05-18 19:24:52 -07:00
Wilmer Paulino
badbc5a491 rpc: use existing rpc logger for wtclientrpc
The logger string used to identify the wtclient and wtclientrpc loggers
was the same, leading to being unable to modify the log level of the
wtclient logger as it would be overwritten with the wtclientrpc's one.
To simplify things, we decide to use the existing RPC logger for
wtclientrpc.
2020-05-18 19:24:52 -07:00
Wilmer Paulino
1cbb574333 wtclient: filter out inactive sessions upon adding existing/new tower 2020-05-18 19:24:52 -07:00
Wilmer Paulino
2de2f28d23 wtclient: load missing info into client sessions upon new tower
This addresses a potential panic in where we relied on this missing info
being populated.
2020-05-18 19:24:52 -07:00
Wilmer Paulino
4a91472469 wtclient: refactor existing candidate session filtering into method 2020-05-18 19:24:52 -07:00
Olaoluwa Osuntokun
7daead6d85 Merge branch 'v0.10.1-beta-4257' into v0.10.1-beta-rc1-branch 2020-05-18 19:24:17 -07:00
Joost Jager
5e83ed9d89 routing+routerrpc: add multiple outgoing channel restriction 2020-05-18 19:23:12 -07:00
Joost Jager
389b715f15 routing/test: add channel id constants 2020-05-18 19:20:15 -07:00
Olaoluwa Osuntokun
eb445d5789 Merge branch 'v0.10.1-beta-2668' into v0.10.1-beta-rc1-branch 2020-05-18 19:19:34 -07:00
Conner Fromknecht
412d7f5c38 config: adds cli configurable --migration-dry-run 2020-05-18 19:18:25 -07:00
Conner Fromknecht
4b7e8669ac channeldb/db: adds optional dry-run abort for migrations 2020-05-18 19:17:08 -07:00
Olaoluwa Osuntokun
935c2f2c10 Merge branch 'v0.10.1-beta-4253' into v0.10.1-beta-rc1-branch 2020-05-18 19:16:41 -07:00
Olaoluwa Osuntokun
3c0b438f16 cmd/lncli: remove usage of Millisecond() for Go 1.12
The new table format for the pay command started to use the
`Millisecond()` method on `time.Duration`. However, this method was only
added in Go 1.13, so this breaks the build for Go 1.12. We replace this
by manual division. `time.Duration` "natively" is in nanoseconds, so we
covert to milli seconds by dividing my `time.Millisecond`, which is
1,000,000.
2020-05-18 19:16:41 -07:00
Olaoluwa Osuntokun
b38c529ba8 Merge branch 'v0.10.1-beta-4234' into v0.10.1-beta-rc1-branch 2020-05-18 19:16:13 -07:00
carla
3289b31b09 lntest/test: add htlc events test to multi-hop error propagation 2020-05-18 19:16:13 -07:00
carla
a80c69982d lntest/test: move multi-hop error propagation into its own file 2020-05-18 19:16:13 -07:00
carla
926892c906 lntest/test: test htlcnotifier stream for successful multi-hop payments 2020-05-18 19:16:13 -07:00
carla
d70f77efaf lntest/test: move multi-hop payments test into own file 2020-05-18 19:16:13 -07:00
carla
08da737316 lnrpc: add failure detail none to link event rpc 2020-05-18 19:16:13 -07:00
Olaoluwa Osuntokun
913c787082 Merge branch 'v0.10.1-beta-4241' into v0.10.1-beta-rc1-branch 2020-05-18 19:15:32 -07:00
Olaoluwa Osuntokun
f8b85eaf12 channeldb: eliminate extra copy in QueryPayments
In this commit, we eliminate an extraneous copy in the `QueryPayments`
method. Before this commit, we would copy each payment from the initial
FetchPayments call into a new slice. However, pointers to payments are
return from `FetchPayments`, so we can just maintain that same reference
rather than copying again when we want to limit our response.
2020-05-18 19:15:32 -07:00
Olaoluwa Osuntokun
4384978728 Merge branch 'v0.10.1-beta-4176' into v0.10.1-beta-rc1-branch 2020-05-18 19:14:56 -07:00
Wilmer Paulino
97e5763601 rpcserver: omit uptime in ListChannels response if server not started
If the server hasn't fully started yet, it's possible that the channel
event store hasn't either, so it won't be able to consume any requests
until then. To prevent blocking, we'll just omit the uptime related
fields for now.
2020-05-18 19:14:56 -07:00
Wilmer Paulino
08f25bb5bf rpcserver: include upfront shutdown script in ListChannels response
This field could be omitted from the response if we were unable to
calculate the channel's uptime.
2020-05-18 19:14:56 -07:00
Olaoluwa Osuntokun
1a3194d302
build: bump version to v0.10.0-beta v0.10.0-beta 2020-04-29 10:21:45 -07:00
Olaoluwa Osuntokun
1d548684e2
build: bump version to v0.10.0-beta.rc6 v0.10.0-beta.rc6 2020-04-28 19:53:28 -07:00
Olaoluwa Osuntokun
957b34262a
Merge pull request #4230 from wpaulino/increase-zmq-timeout
chainregistry: increase zmq connection timeout with bitcoind backend
2020-04-28 19:49:12 -07:00
Olaoluwa Osuntokun
948fe8cfdb
Merge pull request #4224 from guggero/psbt-warning
lncli+docs: add safety warning about not publishing PSBT manually
2020-04-28 19:40:15 -07:00
Wilmer Paulino
c039aee059
chainregistry: increase zmq connection timeout with bitcoind backend
There seems to be a misinterpretation of a variable between the
btcwallet and gozmq libraries. When establish a ZMQ connection, it
expects a timeout, which is used to set read deadlines and determine how
long we should wait before attempting a reconnection. Within btcwallet
and lnd however, this is is interpreted as a polling duration,
explaining the current value of 100ms. Under load, especially on
less-capable hardware, this leads to high resource usage as we get into
a constant reconnection loop. To remedy this, we use a timeout of 5s
instead, which is a much more reasonable value for read timeouts, and is
also what's used for LN peers.
2020-04-28 11:15:44 -07:00
Oliver Gugger
fb17e9b863
docs: add PSBT publish warning 2020-04-26 21:05:24 +02:00
Oliver Gugger
d765e73e57
lncli: add PSBT publish warning 2020-04-26 21:05:13 +02:00
Olaoluwa Osuntokun
0cf63ae898
build: bump version to 0.10.0-beta.rc5 v0.10.0-beta.rc5 2020-04-23 18:13:24 -07:00
Olaoluwa Osuntokun
444eec2abc
Merge pull request #4196 from joostjager/lncli-live
lncli: live table-based payment updates
2020-04-23 18:11:07 -07:00
Joost Jager
f6b2410011
routing+routerrpc: rename max_shards to max_parts
Don't introduce a new term and align with the P in MPP.
2020-04-22 14:49:19 +02:00
Joost Jager
8d7e07d96b
lncli: live table-based payment updates 2020-04-22 14:49:17 +02:00
Olaoluwa Osuntokun
ce0a61abeb
lnrpc/invoicesrpc: linter fix 2020-04-21 22:19:24 -07:00
Olaoluwa Osuntokun
0bc05f9d65
build: bump version to bump version to v0.10.0-beta.rc4 v0.10.0-beta.rc4 2020-04-21 18:12:57 -07:00