yyforyongyu
5d0c787856
invoices: remove the global mock htlcModifierMock
...
This can create race in the tests.
2025-07-14 13:44:45 +08:00
Elle
6b326152d4
Merge pull request #10038 from ellemouton/graphMig3-indexes
...
[graph mig 3]: graph/db: migrate zombies, closed SCIDs, prune log from kvdb to SQL
2025-07-11 10:52:34 +02:00
Elle Mouton
c2fcaae7ec
docs: add release notes entry
2025-07-11 09:36:19 +02:00
Elle Mouton
8b82a5c8fe
graph/db: migrate zombie index to SQL
...
This commit expands `MigrateGraphToSQL` to include migration of the
zombie index.
NOTE: we take this opportunity to clean up the zombie index a bit by
first checking for each channel in the zombie index if it has been
marked as closed in the closed-scid index. If it has, then there is no
need to include it in the zombie index. A special case test for this
is added too.
2025-07-11 09:36:17 +02:00
Elle Mouton
0cb17bbbe5
graph/db: migrate closed SCID index
...
This commit expands `MigrateGraphToSQL` to include the migration of the
closed-scid index.
2025-07-11 09:36:14 +02:00
Elle Mouton
03ede9ccef
graph/db: migrate prune log
...
This commit expands the `MigrateGraphToSQL` to include migration of the
prune log.
2025-07-11 09:15:47 +02:00
Oliver Gugger
63609b0801
Merge pull request #10061 from yyforyongyu/fix-listsweep-itest
...
itest+lntest: fix flake in `testListSweeps`
2025-07-11 00:25:48 -06:00
Oliver Gugger
04a2be29d2
Merge pull request #10066 from ellemouton/graphFixMergeIssue
...
graph/db: fix sql test compilation
2025-07-10 08:08:42 -06:00
Elle Mouton
36f8a66b5a
graph/db: remove temporary test skip
...
The skip is no longer needed.
2025-07-10 14:54:04 +02:00
Elle Mouton
b7d4f80e3e
graph/db: pass in ctx to test method
...
Fix compilation error.
2025-07-10 14:53:10 +02:00
Oliver Gugger
8ee661f18f
Merge pull request #10043 from ellemouton/ctx3
...
multi: add context.Context param to more graphdb.V1Store methods
2025-07-10 13:40:51 +02:00
Olaoluwa Osuntokun
4fef0f4d7a
Merge pull request #10001 from yyforyongyu/finalize-stfu
...
Enable quiescence in production and add timeout config
2025-07-09 19:01:48 -07:00
yyforyongyu
52d963bae0
itest+lntest: fix flake in testListSweeps
...
We now make sure we assert the `ListSweeps` results in a wait closure.
2025-07-09 20:52:02 +03:00
Oliver Gugger
0e830da9d9
Merge pull request #10058 from ellemouton/fix/rpc-graph-cache-race
...
rpcserver: fix race condition in graph cache eviction
2025-07-09 17:09:38 +02:00
Oliver Gugger
10209b9301
Merge pull request #10059 from ellemouton/geminiStyle
...
.gemini: add styleguide.md
2025-07-09 17:08:46 +02:00
Elle Mouton
b62793ada8
.gemini: add styleguide.md
...
Add a styleguide for gemini derived from docs/development_guidelines.md.
2025-07-09 16:22:32 +02:00
Oliver Gugger
ea32aac770
Merge pull request #10050 from ellemouton/graphMig2-channels
...
[graph mig 2]: graph/db: migrate graph channels and policies from kvdb to SQL
2025-07-09 13:09:27 +02:00
Elle Mouton
ef181adbc8
rpcserver: fix race condition in graph cache eviction
...
The previous implementation of the graph cache evictor used
time.AfterFunc, which introduced a race condition. The closure
passed to AfterFunc could execute before the call returned and
assigned the timer to the r.graphCacheEvictor field.
This created a scenario where the closure would attempt to call
Reset() on a nil r.graphCacheEvictor, causing a panic.
This commit fixes the race by replacing time.AfterFunc with a
more robust pattern using time.NewTimer and a dedicated goroutine.
The new timer is created and assigned immediately, ensuring that
r.graphCacheEvictor is never nil when accessed.
The dedicated goroutine now safely manages the timer's lifecycle,
resetting it upon firing and stopping it gracefully upon server
shutdown, which also prevents goroutine leaks.
2025-07-09 11:56:09 +02:00
Elle Mouton
640caeff39
docs: add release notes entry
2025-07-09 10:18:57 +02:00
Elle Mouton
b58089049a
graph/db: migrate channels and polices to SQL
...
In this commit, the `MigrateGraphToSQL` function is expanded to migrate
the channel and channe policy data. Both of these have the special case
where the kvdb store records may contain invalid TLV. If we encounter a
channel with invalid TLV, we skip it and its policies. If we encounter a
policy with invalid TLV, we skip it.
The `TestMigrateGraphToSQL` and `TestMigrationWithChannelDB` tests are
updated accordingly.
2025-07-09 10:18:57 +02:00
Olaoluwa Osuntokun
fb68f36acb
Merge pull request #10048 from ziggie1984/fix-utxonursery-encoding
...
contractcourt: fix encoding
2025-07-08 16:55:40 -07:00
Olaoluwa Osuntokun
d40ac4564b
Merge pull request #10044 from ziggie1984/fix-shutdown-issue
...
Fix Shutdown deadlock in some scenarios
2025-07-08 16:53:30 -07:00
ziggie
354585e9dc
docs: add release-notes
2025-07-08 20:10:31 +02:00
ziggie
7a363ee17f
chanbackup: fix shutdown issue when backuper has not started yet
2025-07-08 20:10:31 +02:00
Oliver Gugger
47dce08948
Merge pull request #10018 from yyforyongyu/minor-refactor-link
...
Refactor link's long methods
2025-07-08 19:51:04 +02:00
ziggie
9bff22864e
docs: add release notes
2025-07-08 19:16:28 +02:00
ziggie
1b675273fe
contractcourt: fix encoding
2025-07-08 19:16:28 +02:00
Oliver Gugger
df1a15f0f1
Merge pull request #10041 from ziggie1984/fix-fwd-pkg-garbage-collection
...
channeldb: gc fwd packgages which have zero ADDs
2025-07-08 18:30:47 +02:00
Elle Mouton
793c1057bb
graph: remove one context.TODO
...
By threading a context through to the Builder's ForAllOutgoingChannels
method.
2025-07-08 15:11:02 +02:00
Elle Mouton
3d5e852c8c
graph/db: let ForEachNodeCached take a context
2025-07-08 15:11:02 +02:00
Elle Mouton
1e804a3d5f
graph/db: let ForEachNode take a context
2025-07-08 15:11:02 +02:00
Elle Mouton
f05ef2db97
graph/db: let ForEachNodeCacheable take a context
2025-07-08 15:10:30 +02:00
Elle Mouton
85fda8b926
routing+server: let ForAllOutgoingChannels take a context
...
And so, remove a previously added context.TODO
2025-07-08 15:10:30 +02:00
Elle Mouton
046e106a17
graph/db: let ForEachChannel take a context
2025-07-08 15:10:30 +02:00
Elle Mouton
f8d3a3f3ba
graph/db: let ForEachNodeChannel take a context
2025-07-08 15:10:30 +02:00
Elle Mouton
67c0f54e13
graph/db+server: let ForEachSourceNodeChannel take a context
2025-07-08 15:10:30 +02:00
Elle Mouton
792970e50c
server: create call-back helper forEachSrcNodeChan
...
We do this so that in an upcoming commit, we can expand the param list
of the call-back without adding another indent to the call-back code.
2025-07-08 15:10:30 +02:00
Elle Mouton
6295211d1a
server: use errors.Is for error comparison
2025-07-08 15:10:29 +02:00
Elle Mouton
61c1d258c3
graph/db: factor out helper code
...
Here we factor out some of the crud code in TestEdgePolicyMissingMaxHtcl
so that we can re-use it later on.
2025-07-08 14:30:14 +02:00
Elle Mouton
0162ee949c
graph/db: move TLV validation for KVStore
...
Here, we move TLV validation for the KVStore out of `updateEdgePolicy`
so that we can re-use `updateEdgePolicy` in our tests to write policies
with invalid TLV (since that was possible before the recently added TLV
sanity check) so that we can test that our SQL migration behaves
correctly for these cases.
2025-07-08 14:28:45 +02:00
Oliver Gugger
886ccd3f9b
Merge pull request #10042 from ziggie1984/debug-sending-payment-failure
...
routing: add logs to debug potential payment sending issue
2025-07-08 14:15:50 +02:00
Elle
11f6648527
Merge pull request #10036 from ellemouton/graphMig1-nodes
...
[graph mig 1]: graph/db: migrate graph nodes from kvdb to SQL
2025-07-08 14:15:18 +02:00
ziggie
eb4c87cdcb
routing: return error for getBandwidth and log it
2025-07-08 11:41:15 +02:00
Elle Mouton
cb959bddb0
docs: add release note
2025-07-08 11:37:44 +02:00
Elle Mouton
9657707175
graph/db: migrate source node to SQL store
2025-07-08 11:37:41 +02:00
Elle Mouton
8b2f4821d4
graph/db: migrate nodes to SQL store
...
This commit expands MigrateGraphToSQL so that it migrates all the graph
nodes from kvdb to SQL.
The TestMigrateGraphToSQL test is updated to cover the basic
LightningNode cases. A new test, `TestSQLMigrationEdgeCases`, is also
added and a case is added to tests the edge case where a node exists in
our kvdb store that has invalid TLV bytes.
2025-07-08 11:37:39 +02:00
ziggie
9a75400295
multi: add logs to debug potential payment sending issue
2025-07-08 10:54:59 +02:00
ziggie
923cafb989
multi: revert back changes from 9911
...
always process remote ADDs even when they are empty to trigger
the gc process when loading them back into memory.
2025-07-08 10:25:26 +02:00
Elle Mouton
084563c5c0
sqldb+invoices: create a re-usable comparion helper function
...
So that we can use it for comparisons in other migrations too.
2025-07-07 18:41:46 +02:00
Oliver Gugger
b815109b81
Merge pull request #10045 from yyforyongyu/fix-panic
...
contractcourt: only close quit in `Stop`
2025-07-07 16:30:58 +02:00