18564 Commits

Author SHA1 Message Date
Oliver Gugger
82b7891e2d
rpcserver: add custom channel data to pending channels
The pending force close and pending waiting close channels didn't have
their custom channel data populated yet.
2025-03-27 12:38:49 -05:00
Oliver Gugger
bab5cabd90
lnrpc+rpcserver: add custom channel data for closed channels
This commit adds the custom channel data for closed channels which
represents the initial funding state as well as the final balances at
closing time.
2025-03-27 12:38:47 -05:00
Oliver Gugger
a53c6dda64
Merge pull request #9650 from Roasbeef/early-offer-chan-flushing-flake
lnwallet/chancloser: fix flake in TestRbfChannelFlushingTransitions/early_offer
2025-03-27 08:18:07 -06:00
Yong
15dbc43f51
Merge pull request #9627 from yyforyongyu/sweep-under-budget
Sweep inputs even the budget cannot be covered
2025-03-27 13:31:25 +08:00
Olaoluwa Osuntokun
f08e7fe0d6
lnwallet/chancloser: fix flake in TestRbfChannelFlushingTransitions/early_offer
In this commit, we fix a flake in the
`TestRbfChannelFlushingTransitions/early_offer` test. The fix is simple:
this is actually an "iteration", as we have a self transition to the
ChannelNegotiation state first. We also don't need to send the
remoteOffer, so we set `sendInit` to false. The offer still needs to be
passed in to ensure that the assertions work however.
2025-03-26 16:36:13 -07:00
Olaoluwa Osuntokun
a307280c40
protofsm: reduce log spam during state transitions
In this commit, we reduce log spam a bit during state transitions. We
only log the type of the event when sending the event, as we'll print
the same event when creating the queue "applying", and later when
processing". Next we remove the "applying" log as that first event will
always be logged twice.

The combo of these to changes makes the logs much easier to follow.
2025-03-26 16:36:11 -07:00
Oliver Gugger
193d2a6581
Merge pull request #9649 from guggero/cmd-fix
cmd: fix incorrect error code
2025-03-26 13:19:43 -06:00
Oliver Gugger
04533e924c
cmd: fix incorrect error code
Fixes a bug introduced by #9605, fixes #9648.
We return a specific error in the RPC permission interceptor for the
case where the wallet is already unlocked or is still locked.
We need to catch those errors correctly to give the user a bit more
context on what to do.
2025-03-26 11:28:59 -05:00
Oliver Gugger
f48e5098b1
Merge pull request #9643 from yyforyongyu/fix-startup
lnd: make sure startup flow is not aborted
2025-03-26 07:56:46 -06:00
yyforyongyu
ec2f3add6e
sweep: remove dead code 2025-03-26 18:24:48 +08:00
yyforyongyu
c7bea07d58
sweep: start the sweeping if there are normal inputs
We now start the sweeping process if there are normal inputs to
partially cover the budget.
2025-03-26 18:24:47 +08:00
yyforyongyu
b6daa3bad4
docs: update release notes 2025-03-26 18:24:47 +08:00
yyforyongyu
43409c7840
rpcserver: use HtlcIndex as the unique key 2025-03-26 18:24:47 +08:00
yyforyongyu
70dec8e169
lnd: log sync status in GetInfo
This is added to fix a flake found in starting the node.
2025-03-26 18:24:47 +08:00
yyforyongyu
8ad122bd03
itest: add testBumpFeeLowBudget 2025-03-26 18:24:47 +08:00
yyforyongyu
64f7a7f3d0
lntest+itest: update block height in MineBlockWithTx
Make sure we update the harness's current height and assert nodes have
been synced. Also fixes some typo found.
2025-03-26 18:24:47 +08:00
yyforyongyu
883381d266
lntest+itest: return the tx from FundCoins
This is used is a following test.
2025-03-26 18:24:46 +08:00
yyforyongyu
4abc1461ad
itest: refactor runBumpFee to fix a flake
Make sure we assertPendingSweepResp in a wait call to wait for the
updated resp.
2025-03-26 18:24:46 +08:00
yyforyongyu
eea3561eea
sweep+itest: return next retry fee rate in TxFailed event
We now return the next retry fee rate in `TxFailed` event in
`TxPublisher`. When handling the event, `UtxoSweeper` will update the
inputs to make sure the starting fee rate is set before attempting the
next sweep.
2025-03-26 18:24:44 +08:00
yyforyongyu
6dbf4ce470
sweep: add method calculateRetryFeeRate
A minor refactor to prepare the upcoming changes.
2025-03-26 15:26:11 +08:00
yyforyongyu
861dc145bf
sweep: create sweep tx even the budget cannot be met
We now always create the sweeping tx even though the budget cannot be
covered so we don't miss the deadline. Note that the fee bump will fail
once the provided wallet input cannot cover the increase fees, which is
fine as these inputs will be marked as failed and be retried again in
the next block. When that happens, if there are new wallet UTXOs, a new
batch will be created to perform the fee bump.
2025-03-26 15:26:08 +08:00
yyforyongyu
3c4fd1b484
sweep: refactor AddWalletInputs by adding addWalletInput
A minor refactor to prepare for upcoming changes.
2025-03-26 14:25:29 +08:00
yyforyongyu
1e0ddf3a16
docs: update release notes 2025-03-26 14:15:52 +08:00
yyforyongyu
b1e55f5fe5
lnd: don't abort the startup on subsystem errors
We want to make sure the node can start if non-fatal error is returned.
2025-03-26 14:15:52 +08:00
Oliver Gugger
0a2b33abe5
Merge pull request #9645 from guggero/update-contributors
docs: update release notes with contributors
2025-03-25 11:42:15 -06:00
Oliver Gugger
300fbbc528
docs: update release notes with contributors
Adds all missing contributors since v0.18.0-beta, extracted from the git
log.
2025-03-25 12:07:37 -05:00
Oliver Gugger
2998f5b3c5
Merge pull request #9644 from ziggie1984/payment-unit-test
Add unit test to record pkg
2025-03-25 10:34:38 -06:00
yyforyongyu
799ce9752a
lnd: skip ErrEdgeNotFound when iterating channels
We now skip another error when iterating the channels for our persistent
peers to unblock connecting to other peers.
2025-03-26 00:25:30 +08:00
yyforyongyu
dd8f2888a0
lnd: log errors during the startup flow
To aid us debugging startup issues.
2025-03-26 00:25:30 +08:00
ziggie
3952cf39c3
record: add unit test 2025-03-25 10:36:16 -05:00
Oliver Gugger
d1093cd3c3
Merge pull request #9642 from yyforyongyu/skip-blockbeat
lnd: skip setting `blockbeat` for `nochainbackend` mode
2025-03-25 08:20:34 -06:00
Oliver Gugger
cf35be847c
Merge pull request #9626 from ziggie1984/payment-lifecycle-small-fix
payment lifecycle small fix
2025-03-25 08:15:48 -06:00
Oliver Gugger
44161a3643
Merge pull request #9631 from hieblmi/degrade-err
rpcserver: warn if sendcoins default conf target is used
2025-03-25 08:09:11 -06:00
Oliver Gugger
af2f11edff
Merge pull request #9544 from lightningnetwork/elle-graphCacheBase
graph: move graph cache out of CRUD layer
2025-03-25 07:43:06 -06:00
Oliver Gugger
813f26cbc1
Merge pull request #9621 from jjjike2021/exp/maps
multi: remove x/exp/maps dependency
2025-03-25 07:08:02 -06:00
yyforyongyu
ab9004492e
lnd: skip setting blockbeat for nochainbackend mode
If we are in `nochainbackend` mode, we need to skip fetching the best
block during startup, otherwise it will be blocked.
2025-03-25 20:57:51 +08:00
ziggie
0eca55fe94
docs: add release-notes 2025-03-25 04:42:03 -05:00
ziggie
013e408abe
multi: make validation for keysend stricter 2025-03-25 04:42:03 -05:00
Elle Mouton
947ca937c7
docs: update release notes 2025-03-25 08:04:42 +02:00
Yong
3351a1745e
Merge pull request #9543 from ziggie1984/fix-payment-inconsitency
multi: fix payment failure overwrite
2025-03-25 11:36:24 +08:00
jike
e72caf7b45 multi: remove x/exp/maps dependency 2025-03-25 10:34:19 +08:00
Olaoluwa Osuntokun
0053fda6da
Merge pull request #9624 from Roasbeef/0-19-branch
build: bump version to v0.19 rc1
v0.19.0-beta.rc1
2025-03-24 19:24:26 -07:00
Olaoluwa Osuntokun
1cebfedbae
Merge pull request #9607 from Roasbeef/unified-gossip-limiter
discovery: unify rate.Limiter across all gossip peers
2025-03-24 19:22:16 -07:00
Olaoluwa Osuntokun
8c3c53f63b
docs/release-notes: add release notes for gossip rate limit 2025-03-24 19:21:46 -07:00
Olaoluwa Osuntokun
c7ed5d65c6
multi: add new config options to tune gossip msg allocated bandwidth
We go with the defaults of if no values are set.
2025-03-24 19:21:45 -07:00
Olaoluwa Osuntokun
05702d48b2
discovery: switch to bytes based rate limiting for outbound msgs
In this commit, we revamp the old message based rate limiting. First, we
move to meter by bytes/s instead of messages/s. The old logic had an
error in that it limited groups of message replies, instead of each
message. With this new approach, we'll use the newly added
SerializedSize method to implement fine grained bandwidth metering.

We need to pick two values, the burst rate, and the msg bytes rate. The
burst rate is the max amt that can be sent in a given period of time. We
need to set this above 65 KB, or the max msg limit, otherwise no
messages can be sent. The bucket starts with this many tokens (bytes).
As those are depleted, the amount of tokens is refilled at the msg
bytes rate.

As conservative values, we've chosen 200 KB as the burst rate, and 100
KB/s as the limit.
2025-03-24 19:21:45 -07:00
Olaoluwa Osuntokun
5b93319aaa
build: bump version to v0.19 rc1 2025-03-24 15:49:23 -07:00
Olaoluwa Osuntokun
66077b1722
chainio: demote per-block logging to Debugf 2025-03-24 15:49:21 -07:00
Olaoluwa Osuntokun
67d2eac437
Merge pull request #9620 from guggero/testnet4
chain: add testnet4 support
2025-03-24 15:48:26 -07:00
Oliver Gugger
f7b3177483
Merge pull request #9558 from kornpow/fix-listchaintxns-lncli-inputs
Fix input sanitation for listchaintxns lncli cmd
2025-03-24 13:53:29 -06:00