Commit Graph

18712 Commits

Author SHA1 Message Date
Olaoluwa Osuntokun
21ca1e650b acessman: improve access manager logging and error handling
This commit adds logs to the new access manager. This'll help us monitor
the new system behavior, and may make debugging easier in the future.
2025-04-17 17:20:11 -07:00
Olaoluwa Osuntokun
6517104da6 lnutil: add LogPubKey helper function
This captures a common pattern where we want to log a peer's public key
along side each logging statement.
2025-04-17 17:20:09 -07:00
Oliver Gugger
51add8a701 Merge pull request #9722 from ziggie1984/fix-notifier-itest-flake
Change RPC call order for the btcd notifier
2025-04-17 22:50:07 +02:00
András Bánki-Horváth
579f6f0f68 Merge pull request #9724 from bhandras/fundpsbt-custom-input-lock
walletrpc: allow custom lock ID and duration in `FundPsbt`
2025-04-17 17:31:48 +02:00
Oliver Gugger
337d9a9b23 Merge pull request #9628 from guggero/bitcoind-29
scripts+GitHub: use bitcoind v29.0
2025-04-17 16:23:00 +02:00
Andras Banki-Horvath
e86bea3625 docs: update release notes for 0.19 2025-04-17 15:25:12 +02:00
Andras Banki-Horvath
fbe645f96a itests: add FundPsbt custom lock ID and duration test 2025-04-17 15:25:12 +02:00
Andras Banki-Horvath
8dab512981 walletrpc: make use of custom lock ID and lock duration in FundPsbt 2025-04-17 15:25:12 +02:00
Andras Banki-Horvath
a62e410ebf walletrpc: add custom lock ID and lock duration to FundPsbtRequest 2025-04-17 15:25:11 +02:00
Oliver Gugger
c25f98f5b9 Merge pull request #9727 from guggero/strict-forwarding
Aux bandwidth manager: also pass HTLC blob to `ShouldHandleTraffic`
2025-04-17 14:00:46 +02:00
Oliver Gugger
a304be6bad Merge pull request #9715 from ellemouton/removeChanClean
itest: remove manual channel closures from route blinding tests
2025-04-17 14:00:08 +02:00
Oliver Gugger
5fb0f43172 htlcswitch+routing: add htlc blob to ShouldHandleTraffic
Whether we should let the aux bandwidth manager decide what the
bandwidth of a channel is should also depend on whether the HTLC is a
custom HTLC, not just the channel.
2025-04-17 11:52:56 +02:00
Oliver Gugger
cf0e0ff32c switch: add trace log for circular route detection
Helps with debugging of strict forwarding issues.
2025-04-17 10:53:37 +02:00
ziggie
cadc8d0fba btcdnotify: change order of rpc calls.
We have to make sure we register the block notifier before we
fetch the best block for block notifications.
2025-04-17 09:51:44 +02:00
Oliver Gugger
121e6c4015 docs: update release notes 2025-04-17 09:11:54 +02:00
Oliver Gugger
f4a6c3487a scripts+GitHub: use bitcoind v29.0 2025-04-17 09:07:01 +02:00
Oliver Gugger
24fdae7dff Merge pull request #9693 from yyforyongyu/debug-listunspent
Fix inaccurate `locked_balance`
2025-04-17 08:46:36 +02:00
Oliver Gugger
7381f4b221 Merge pull request #9687 from GeorgeTsagk/aux-trff-shpr-htlcview
`AuxTrafficShaper.PaymentBandwidth` uses HTLC view
2025-04-17 07:59:00 +02:00
yyforyongyu
3d69d70eba docs: update release notes 2025-04-17 09:36:32 +08:00
yyforyongyu
07583f94ff gomod: update btcwallet 2025-04-17 09:36:28 +08:00
yyforyongyu
ab2361b8fb lnd: log lockedBalance in WalletBalance 2025-04-17 09:32:29 +08:00
yyforyongyu
9d7b55ed4f itest: add wallet-related itest 2025-04-17 09:32:28 +08:00
yyforyongyu
0daadb05bf lntest: add SendAllCoins and remove standby nodes context
Standby nodes are no longer used so we update `AssertNumUTXOs` to remove
the confusing check.
2025-04-17 09:32:28 +08:00
ziggie
fee68593ab docs: add release notes 2025-04-16 16:36:18 +02:00
ziggie
947702f6de multi: add global log for wallet db postgres back 2025-04-16 16:31:24 +02:00
Oliver Gugger
06f1ef47fa Merge pull request #9720 from ziggie1984/add-btcd-notify-logs
chainntnfs: increase logging of the subsystems
2025-04-15 18:56:44 +02:00
ziggie
8dde8cfc59 chainntnfs: increase logging of the subsystems 2025-04-15 15:20:22 +02:00
Oliver Gugger
014706cc3e Merge pull request #9713 from ellemouton/getInfoStarted
scripts: use LND status to determine when a node is ready for RPC calls
2025-04-15 12:40:32 +02:00
Elle Mouton
c70e1194a0 scripts/bw-compat: use status server to determine if node is ready
This commit adjusts the backwards compatability test in 2 ways:

1) we first set up the bitcoin backend before waiting for our network
   nodes to start. This is so that the nodes can sync to chain and
become fully active during the `wait_for_nodes` call.
2) Then, in the `wait_for_node` helper, we use the status server
   response to determine if a node is ready instead of just waiting for
`GetInfo` to return a response. This is because waiting for
SERVER_ACTIVE is a more accurate signal that the node is ready to
receive RPC calls.
2025-04-15 11:49:07 +02:00
Oliver Gugger
7d3b5a1bcf Merge pull request #9714 from bhandras/invoice-migration-log-rate
invoices: reduce log spam when migrating invoices to SQL
2025-04-14 20:38:22 +02:00
Oliver Gugger
bec84e14a8 Merge pull request #9674 from ziggie1984/small-neutrino-fix
Move neutrino db also to postgres when using postgres as a backend
2025-04-14 18:46:44 +02:00
Oliver Gugger
905cf651ac Merge pull request #9712 from guggero/bump-kvdb
mod: bump kvdb to v1.4.15
2025-04-14 18:37:39 +02:00
Elle Mouton
b13f22be6b itest: remove manual channel closures from route blinding tests
The itest framework now handles the closure of any channels opened
during the test and so we dont need to manually close them. The manual
closure code in the route blinding tests were resulting in the
occasional test flake.
2025-04-14 17:11:24 +02:00
Andras Banki-Horvath
7020edb60d invoices: reduce log spam when migrating invoices to SQL 2025-04-14 16:57:30 +02:00
ziggie
417d2de43e docs: add release-notes 2025-04-14 16:28:54 +02:00
ziggie
5c402472a4 mulit: move neutrino.db also to postgres 2025-04-14 16:28:54 +02:00
Oliver Gugger
62b0c4cc20 mod: bump kvdb to v1.4.15 2025-04-14 15:59:01 +02:00
Oliver Gugger
6d648ad90a Merge pull request #9684 from ziggie1984/master
multi: update new walletdb version in main go.mod and kvdb go.mod
kvdb/v1.4.15
2025-04-14 15:56:16 +02:00
George Tsagkarelis
d0ef248ae2 htlcswitch: add HtlcView as PaymentBandwidth argument
In order to get more precise bandwidth reports, we also need to provide
this method with the latest htlc view. Since aux data is committed to in
the channel commitment, some uncommited HTLCs may not be accounted for,
so we need to manually provide them via the HTLC view.
2025-04-14 15:42:28 +02:00
George Tsagkarelis
53254c79b4 lnwallet: add FetchLatestHTLCView to LightningChannel
We add a public method for the lightning channel to expose the latest
HtlcView. This is used in a follow up commit by the channel link.
2025-04-14 15:34:09 +02:00
George Tsagkarelis
a279058408 lnwallet: replace HtlcView with AuxHtlcView in existing code 2025-04-14 15:34:09 +02:00
George Tsagkarelis
b96d57e88f lnwallet: add AuxHtlcView 2025-04-14 15:34:09 +02:00
Yong
4cf18ee45c Merge pull request #9703 from yyforyongyu/fix-attempt-hash
Patch htlc attempt hash for legacy payments
2025-04-14 21:12:26 +08:00
Oliver Gugger
ff6f98a818 Merge pull request #9696 from yyforyongyu/add-aider
Add `development_guidelines.md` for both human and machine
2025-04-14 11:19:58 +02:00
yyforyongyu
45029d9b6c docs: add development_guidelines.md
This file focuses on the requirements and steps needed to make an
acceptable PR.
2025-04-14 17:08:56 +08:00
Oliver Gugger
f7bd2a7228 Merge pull request #9705 from ffranr/assert-log-shutdown-only-with-handle
lntest: assert shutdown via logs only if log file handle is present
2025-04-11 17:48:19 +02:00
ffranr
24ba098798 lntest: assert shutdown via logs only if log handle is present
Ensure shutdown assertions through log inspection are only performed
when the harness node has an active log file handle. This avoids
errors during shutdown when log file output is disabled.
2025-04-11 15:30:13 +01:00
yyforyongyu
79ab2b2daf docs: update release notes 2025-04-11 21:52:15 +08:00
yyforyongyu
106e1e91f0 routing: patch the hash field for legacy payments
For legacy payments, the hash field will be nil, and we need to use the
payment identifier instead. We have multiple ways to fix this:

A trivial solution is we can simply call `sharder.GetHash` in
`collectResult`, and pass this hash to `attempt.Circuit()`, which ends
up multiple methods taking the hash. This is bad as it's confusing why
the methods of `HTLCAttempt` need to take another hash value, while
itself already has the info via `HTLCAttempt.Hash`. We don't want an
exceptional case to influence our main flow.

We can then patch the field `HTLCAttempt.Hash`, and set it to the
payment hash if it's nil, which can be done in `collectResult`. This is
also less optimal as it means every htlc attempts, either legacy or not,
now need to bear this context.

The best way to do this is to patch the field in
`reloadInflightAttempts`. As we are sure any new payments made won't be
legacy, and the only source of legacy payments comes from reloading
existing payments.
2025-04-11 21:52:15 +08:00
yyforyongyu
8689eeede4 routing: add regression test to catch the panic 2025-04-11 21:52:14 +08:00