Oliver Gugger
df6c02e3af
Merge pull request #10068 from ellemouton/graphResetForCallbacks
...
multi: let all V1Store `ForEach*` methods take a `reset` call-back
2025-07-15 04:54:47 -06:00
Elle Mouton
83f6dc4983
multi: reset for ForEachNodeDirectedChannel
2025-07-15 11:25:10 +02:00
Elle Mouton
13d0bd5ef6
graph/db: let ForEachChannelCacheable take a reset param
2025-07-15 11:25:10 +02:00
Elle Mouton
b3f3766fe6
multi: pass reset to GraphSession
2025-07-15 11:25:09 +02:00
Elle Mouton
e17fd58a1d
graph/db: pass reset to ForEachNodeCacheable
2025-07-15 11:25:09 +02:00
Elle Mouton
21ac7ef6f4
multi: add reset to ForEachNode
2025-07-15 11:25:09 +02:00
Elle Mouton
c32bf642d2
multi: pass reset to ForEachNodeCached
2025-07-15 11:23:27 +02:00
Elle Mouton
e5fbca8299
multi: let ForEachNodeChannel take a reset param
2025-07-15 11:23:27 +02:00
Elle Mouton
16126d7703
graph/db: expose reset in ForEachSourceNodeChannel
2025-07-15 11:23:27 +02:00
Elle Mouton
88261834e5
graph/db: expose reset in ForEachChannel
...
Add a `reset` call-back param to the V1Store ForEachChannel method.
2025-07-15 11:23:26 +02:00
Elle Mouton
e00f0a03fc
graph/db: prep SQLStore for reset param
...
This commit just surfaces the locations in the SQLStore where we will
later pass reset params through.
2025-07-15 11:23:26 +02:00
Elle Mouton
57d4ce0f9b
graph/db: expose KVStore locations where a reset is needed
...
This commit passes no-op reset callbacks to various places where they
are needed in the KVStore. Upcoming commits will replace the no-ops by
adding reset params to the methods that require it.
2025-07-15 11:23:26 +02:00
Oliver Gugger
302551ade0
Merge pull request #10071 from ellemouton/graphSQLMigPlugIn
...
lnd+itest: plug in graph SQL migration under test tag & add itest
2025-07-15 01:52:30 -06:00
Elle Mouton
a2ffa74684
itest: graph sql migration itest
...
This commit adds a basic itest that is run under the `test_native_sql`
flag. It tests that the migration is idempotent and that the node cant
be restarted without the `db.use-native-sql` flag once the graph
migration has been run.
2025-07-15 06:40:22 +02:00
Elle Mouton
f5b50afb92
itest: make invoice mig helpers re-usable
...
Refactor to make some of the invoice migration helpers re-usable so that
we can use them for the graph migration itests.
2025-07-15 06:35:24 +02:00
Elle Mouton
902611d86a
lnd: plug in graph SQL migration into dev build
...
This commit plugs in the graph kvdb-to-sql migration for builds
containing the `test_native_sql` tag. This will allow us to perform
local tests and write itests for the migration without exposing it to
the production release build.
2025-07-15 06:34:31 +02:00
Elle Mouton
223cec442b
itest: use random hash gen helper
2025-07-15 06:31:51 +02:00
Oliver Gugger
5bb2277749
Merge pull request #10070 from yyforyongyu/fix-invoice-unit-test
...
Fix invoice unit test `TestInvoiceRegistry`
2025-07-14 00:48:28 -06:00
Oliver Gugger
e62e4918cc
Merge pull request #9659 from Abdulkbk/benchmark-fns
...
fn: fix flake in TestPropForEachConcOutperformsMapWhenExpensive
2025-07-14 00:47:01 -06:00
Elle
add81f1388
Merge pull request #10064 from ellemouton/getChanInfoGrpcErr
...
rpcserver: return consistent grpc NotFound error for GetChaninfo & LookupInvoice
2025-07-14 08:34:46 +02:00
yyforyongyu
5d5e635c48
invoices: fix typos
2025-07-14 13:48:10 +08:00
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
yyforyongyu
18916daa0c
docs: update release notes
2025-07-11 04:11:31 +03:00
yyforyongyu
7a9f197de8
lnwire: simplify dyn decode methods
...
Remove the unnecessary convertions as suggested by Gemini.
2025-07-11 04:11:31 +03:00
yyforyongyu
91797ad1d2
lnwire: patch test and fix extra data in DynCommit
2025-07-11 04:11:31 +03:00
yyforyongyu
e6ab37305c
lnwire: add missing record LocalNonce
...
This record was never added to the `DynCommit`, but it's inherited from
the embedding msg `DynAck`.
2025-07-11 04:11:30 +03:00
yyforyongyu
f39c3679f2
lnwire: make LocalNonce
an optional tlv record and fix extra data
...
It should be an optional record instead of an fn option. In addition,
its tlv type is bumped to be 14 as this record is also included in the
`DynCommit`. If we use tlv type 0, it will create a conflict in the msg
`DynCommit`, which is fixed in the following commit.
2025-07-11 04:11:30 +03:00
yyforyongyu
b7d2f68ed0
lnwire: patch uint test for DynAck
2025-07-11 04:11:30 +03:00
yyforyongyu
5961f7a1bd
lnwire: add method ParseAndExtractExtraData
...
Similar to `ParseAndExtractCustomRecords`, we now add this helper method
to make sure the extra data is parsed correctly.
2025-07-11 04:11:30 +03:00
yyforyongyu
e94ca84449
lnwire: fix encoding of MilliSatoshi
...
`MilliSatoshi` itself is already a `BigSize`, we just need to change the
decoding and encoding types to use that.
2025-07-11 04:11:29 +03:00
yyforyongyu
5e9365552c
lnwire: fix encoding ExtraData
in DynPropose
...
Previously we encode all the fields plus extra data to the field
`ExtraData`, this is now fixed by encoding only unknown data to extra
data. For known records, they are already encoded into the message
fields.
2025-07-11 04:11:29 +03:00
yyforyongyu
61ef83e9c2
lnwire: patch unit test for DynPropose
2025-07-11 04:09:11 +03:00
yyforyongyu
0f1cb54eb2
lnwire: use BigSize
for encoding btc amount
2025-07-11 04:09:11 +03: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
Torkel Rogstad
ed7b056ced
docs: update release notes
2025-07-10 11:36:20 +02:00
Torkel Rogstad
c8b04d03f5
itest+lntest: add grpc NotFound error code test
2025-07-10 11:36:20 +02:00
Elle Mouton
23c3aaac6a
rpcserver: catch extra err case in LookupInvoice
...
For a kvdb backed invoices DB, we sometimes will return the
ErrNoInviocesCreated error if no invoices have ever been created on the
node. In these cases we should still wrap the returned error in the grpc
NotFound code.
2025-07-10 11:21:37 +02:00
Torkel Rogstad
7a52b6ca5e
rpcserver: return consistent grpc NotFound error for GetChaninfo
...
So that we can properly convert this NotFound error back to our
`graphdb.ErrEdgeNotFound` error if we are making this call to another
node via RPC.
2025-07-10 11:21:31 +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
Abdullahi Yunus
3c759ef081
fn: remove flaky test
...
In this commit, we remove TestPropForEachConcOutperformsMapWhenExpensive
as it's flaky and causes the CI to fail. The previous commit intro-
duced a replacement, which benchmarked the functions.
2025-07-09 21:21:45 +01:00
Abdullahi Yunus
36dfed1cba
fn: add benchmark for Map and ForEachConc fns
2025-07-09 21:21:45 +01:00