Commit Graph

19564 Commits

Author SHA1 Message Date
Elle Mouton
f5ce4a5656 graph/db: add BenchmarkCacheLoading
Add a benchmark test to test graph cache loading against various local
graph DBs.
2025-07-30 14:06:33 +02:00
Elle Mouton
45033b8c54 graph/db: add SQL migration progress logs 2025-07-30 14:06:33 +02:00
Elle Mouton
77fe1816f6 graph/db: add test helper for populating via migration
This commit adds a helper test that is similar to TestPopulateDBs except
for the fact that it uses the MigrateGraphToSQL function directly to
migrate a local kvdb-sql graph to a native SQL one.
2025-07-30 14:06:33 +02:00
Elle Mouton
afbe6b12ed graph/db: define various db connection helpers for incoming tests
This is a prep commit that just adds all the boilerplate connection
logic for connecting to various graph DBs. These will be used in
upcoming commits which will add tests and benchmarks.
2025-07-30 14:06:33 +02:00
MPins
4b521e1647 doc: release-notes-0.20.0 2025-07-29 13:55:23 -03:00
MPins
1a9f591b2b itest: add the test for DeleteCanceledInvoice 2025-07-29 13:55:17 -03:00
Olaoluwa Osuntokun
0eacd07c60 Merge pull request #10107 from ellemouton/fixLogLevelInheritance
go.mod: bump btclog v2 version
2025-07-29 12:29:52 -04:00
Elle Mouton
240966de90 graph/db+log: use v2 logger for graph subsystem 2025-07-29 11:34:47 +02:00
Andras Banki-Horvath
cabb3a0a24 scripts: add cherry-pick verification tool with fuzzy matching
This script compares a release branch against a source branch
(e.g. master) to verify that all cherry-picked commits are
unmodified. It first attempts fast matching using normalized
patch hashes.

If no exact match is found, it falls back to a fuzzy matching
mechanism:

- Filters source commits by matching author and commit subject
- Compares normalized diffs using diff -u
- Selects the closest match based on line difference count

Useful for verifying cherry-picks or rebased commits during
release processes. Supports scan and compare limits for
performance.
2025-07-29 08:51:51 +02:00
Oliver Gugger
ce10a9d82e Merge pull request #10114 from ellemouton/fixPolicySwop
graph/db: fix potential policy swop
2025-07-29 00:25:27 -06:00
Elle Mouton
f129b217cf go.mod: bump btclog v2 version 2025-07-29 07:40:43 +02:00
Oliver Gugger
13cec7daec Merge pull request #10083 from starius/reorg-notif-itest3
itest: RegisterSpendNtfn detects reorgs
2025-07-28 23:31:38 -06:00
Boris Nagaev
8723113d27 itest: RegisterSpendNtfn detects reorgs
Added itest "reorg_notifications" which tests that RegisterSpendNtfn behaves as
expected during a reorg. A reorg notification is produced after a reorg affects
the block which has produced a spending notification for this registration.
2025-07-28 20:18:09 -03:00
Elle Mouton
858c064ca2 graph/db: fix potential nil pointer derefs
Here, we fix two bugs that could lead to a nil pointer dereference.
Both are caused by refering to policies that may be nil at the
call-site.
2025-07-28 14:39:28 +02:00
MPins
c00939d0a6 lntest: add functions for DeleteCanceledInvoice itest 2025-07-25 21:21:58 -03:00
MPins
e6a420647c commands: add command to delete canceled invoice
Adds the deletecanceledinvoice by payment hash command.
2025-07-25 21:21:58 -03:00
MPins
3a7df1d7c8 rpcserver+invoices: add support for deleting canceled invoice
Adds server-side RPC functionality to delete canceled invoice,
support deleting specific canceled invoice from the database.
2025-07-25 21:21:51 -03:00
MPins
0146e374fd lnrpc: add the deletecanceledinvoice rpc call 2025-07-25 21:09:18 -03:00
Olaoluwa Osuntokun
2e36f9b8b9 Merge pull request #10096 from yyforyongyu/increase-gossip-default
Increase the default outgoing bandwidth
2025-07-25 15:34:01 -05:00
Oliver Gugger
f4173dbb83 Merge pull request #10090 from starius/up-deps
update golang dependencies
2025-07-25 13:25:33 -06:00
Boris Nagaev
d02520d2b9 go.mod: bump mapstructure/v2 to v2.3.0 2025-07-25 12:21:18 -03:00
Boris Nagaev
3ff11e0765 go.mod: bump runc to v1.1.14 2025-07-25 12:21:13 -03:00
Boris Nagaev
9e58a644aa go.mod: bump google.golang.org/protobuf to 1.33.0
Updated github.com/golang/protobuf to v1.5.4 to be compatible with
google.golang.org/protobuf.

Updated the pinned version in pinned_dep CI job.
2025-07-25 12:20:24 -03:00
Oliver Gugger
839370946e Merge pull request #10108 from yyforyongyu/fix-arb-deadlock
Fix arbitrator deadlock found in `ResolveContract`
2025-07-25 04:42:32 -06:00
yyforyongyu
d0c07d76d2 docs: update release notes 2025-07-25 17:45:02 +08:00
yyforyongyu
03bf1974a3 lncfg: update docs about msg-rate-bytes and msg-burst-bytes 2025-07-25 17:41:00 +08:00
yyforyongyu
cadf870dcb discovery: increase default msg rates to 1MB 2025-07-25 17:40:59 +08:00
yyforyongyu
19a6358a3e docs: add release notes 2025-07-25 17:13:44 +08:00
yyforyongyu
10b4ed6c28 contractcourt: replace MarkChannelClosed with NotifyChannelResolved 2025-07-25 17:13:43 +08:00
yyforyongyu
d3501197be contractcourt: add a new chan resolvedChan to handle resolved channels
Thus we can mark channels as resolved in an async way to avoid deadlock.
2025-07-25 17:13:43 +08:00
Abdullahi Yunus
754c254a4b commands: add test for parseChanIDs
In this commit we add test for `parseChanIDs` to make sure it
parses the chan ids correctly and return errors when invalid value
is passed.

Signed-off-by: Abdullahi Yunus <abdoollahikbk@gmail.com>
2025-07-23 15:31:59 +01:00
Abdullahi Yunus
35c6cecd22 commands: use parseChanIDs method
In this commit we use the `parseChanIDs` method introduced in a
previous commit to process the `outgoing_chan_id` flag for
`queryroutes`.
2025-07-23 15:24:03 +01:00
Abdullahi Yunus
40fe9e9ce3 commands: use StringSlice flag for send payment
In this commit we replace the Int64Slice flag with StringSlice for
chan id flag, in sendpayment request.
2025-07-23 15:21:55 +01:00
Abdullahi Yunus
4751016839 commands: use StringSliceFlag for chan ids
In this commit we use stringSlice flag for incoming and outgoing
channel ids args, for forwarding history command. The Int64Slice
range does not cover all possible scids in the custom alias range.
2025-07-23 15:08:58 +01:00
Oliver Gugger
6f09d9653f Merge pull request #10052 from guggero/rbf-close-err
chancloser: fix flakes in chancloser tests
2025-07-23 03:47:09 -06:00
Elle
90e2116842 Merge pull request #10081 from ellemouton/graphSQLSlices
graph/db: use `/*SLICE:<field_name>*/` to optimise various graph queries
2025-07-22 18:27:10 +02:00
Oliver Gugger
05b87f5ec1 Merge pull request #10075 from yyforyongyu/fix-TestChangeWalletPasswordStateless
Fix flake in `TestChangeWalletPasswordStateless`
2025-07-22 10:02:06 -06:00
Elle Mouton
ddc0e95eda graph/db+sqldb: delete channels in batches
Use the new `SLICES` directive to add a DeleteChannels query which takes
a set of DB channel IDs. Then replace all our calls to DeleteChannel
with a paginated call to DeleteChannels.
2025-07-22 17:17:23 +02:00
Elle Mouton
de6c030f29 graph/db: let DeleteChannelEdges use new wrapped SQL call
Update it to use the new wrapped version of
GetChannelsBySCIDWithPolicies to reduce the number of DB calls.
2025-07-22 17:17:13 +02:00
Elle Mouton
e269d57ffa sqldb+graph/db: use pagination for FetchChanInfos 2025-07-22 17:17:11 +02:00
Elle Mouton
88e9a21d63 sqldb+graph/db: update FilterKnownChanIDs to use pagination
Remove a TODO by making use of the new sqldb.ExecutePagedQuery to fetch
channels in batches rather than one by one.
2025-07-22 17:16:59 +02:00
Elle Mouton
f72c48b283 graph/db+sqldb: pass set of outpoints to SQL
This commit adds a new GetChannelsByOutpoints query which takes a slice
of outpoint strings. This lets us then update PruneGraph to use
paginated calls to GetChannelsByOutpoints instead of making one DB call
per outpoint.
2025-07-22 17:16:49 +02:00
Elle Mouton
2fa30e8735 graph+config: add sql pagination config to ChannelGraph 2025-07-22 17:16:41 +02:00
Elle Mouton
f0d2d1fd0a sqldb: demonstrate the use of ExecutePagedQuery
Here, a new query (GetChannelsByOutpoints) is added which makes use of
the /*SLICE:outpoints*/ directive & added workaround. This is then used
in a test to demonstrate how the ExecutePagedQuery helper can be used to
wrap a query like this such that calls are done in pages.

The query that has been added will also be used by live code paths in an
upcoming commit.
2025-07-22 17:16:38 +02:00
Elle Mouton
006905d57f sqldb: add ExecutePagedQuery helper
Along with a test for it. This helper will allow us to easily create a
pagination wrapper for queries that will make use of the new
/*SLICE:<field_name>*/ directive. The next commit will add a test
showing this.
2025-07-22 17:14:58 +02:00
Elle Mouton
5afd9a5678 scripts: add sql slices workaround to sqlc gen script
This copies the workaround introduced in the taproot-assets code base
and will allow us to use `WHERE x in <list>` type queries.
2025-07-22 17:14:55 +02:00
Olaoluwa Osuntokun
f09c7aee4e Merge pull request #10095 from guggero/remove-old-keys
scripts/keys: remove old expired or revoked keys
2025-07-21 11:10:43 -05:00
Oliver Gugger
8b8290a64d Merge pull request #10030 from guggero/macaroon-docs
lnrpc+rpcserver: improve docs for CheckMacaroonPermissions
2025-07-21 06:27:31 -06:00
Oliver Gugger
1882939cd8 chancloser: fix flake by registering subscriber first
Fixes another flake in the unit-race test: Sometimes we miss startup
events if there's a high CPU load (in CI for example).
To avoid that, we register our subscriber before starting the state
machine.
2025-07-21 13:53:25 +02:00
Oliver Gugger
15d8f963ce chancloser: fix error tests
These tests previously only worked because we didn't properly wait for
all transitions to come in. We fix them by correctly asserting the
expected number of state transitions.
2025-07-21 13:49:17 +02:00