Commit graph

14199 commits

Author SHA1 Message Date
yyforyongyu
68016c0b51
lntemp+itest: refactor testOpenChannelAfterReorg 2023-01-16 16:49:18 +08:00
yyforyongyu
9cb8b120ba
lntemp+itest: refactor testAnchorThirdPartySpend 2023-01-16 16:49:18 +08:00
yyforyongyu
211dad1574
itest: refactor testAnchorReservedValue 2023-01-16 16:49:17 +08:00
yyforyongyu
f1f3d22a81
lntemp+itest: refactor testMultiHopPayments 2023-01-16 16:49:17 +08:00
yyforyongyu
130c4e325a
lntemp+itest: refactor testHtlcErrorPropagation 2023-01-16 16:49:17 +08:00
yyforyongyu
2a7830d442
itest: refactor testMaxHtlcPathfind 2023-01-16 16:49:17 +08:00
yyforyongyu
ec3e1561b6
itest: refactor testWumboChannels 2023-01-16 16:49:17 +08:00
yyforyongyu
638872520e
itest: refactor testMaxChannelSize 2023-01-16 16:49:17 +08:00
yyforyongyu
16bac64ecb
lntemp+itest: refactor testHoldInvoicePersistence 2023-01-16 16:49:17 +08:00
yyforyongyu
984d3ece12
lntemp+itest: refactor testHoldInvoiceForceClose 2023-01-16 16:49:16 +08:00
yyforyongyu
c1b3481354
lntemp+itest: refactor testEtcdFailover 2023-01-16 16:49:16 +08:00
Oliver Gugger
e953034b83
Merge pull request #7325 from ellemouton/fixGomndLintError
lncli+docs: skip gomnd check in switch statement
2023-01-16 09:46:28 +01:00
Elle Mouton
097b4fae68
lncli+docs: skip gomnd check in switch statement 2023-01-16 09:55:07 +02:00
Amin Bashiri
88bccc9836 Fix typos in selfsigned.go [skip ci] 2023-01-15 15:13:29 -07:00
Oliver Gugger
143eba82ea
Merge pull request #7314 from yyforyongyu/fix-unit-test-mailbox
htlcswitch: fix test flake in `TestMailBoxAddExpiry`
2023-01-13 15:05:17 +01:00
Oliver Gugger
d108d7f741
Merge pull request #7315 from sputn1ck/lncli_ordinal_numbers
lncli/sendpayment: more descriptive failure log
2023-01-13 10:28:42 +01:00
sputn1ck
9f8fa3d8ed
lncli: more descriptive htlc failure case
This commit clarifies the htlc failure case in the lncli payment
command, by using the cardinal number as well as 'hop' in the
failure message.

[skip ci]
2023-01-12 17:58:15 +01:00
yyforyongyu
a1cac6d54b
htlcswitch: use mock clock in TestMailBoxAddExpiry
This commit replaces the clock used in the unit test
`TestMailBoxAddExpiry`. Previously the `TestClock` is used, resulting in
the unit test being not so "unit" as the maintainer needs to know the
detailed implementation of `clock.Clock`, resulting in debugging a
failed unit test more difficult as the cognitive cost is high.
Re-implement `clock.Clock` also means we need to maintain more. This is
now solved by using mock clock so we can ignore the implementation
details and care only the returned results.
2023-01-12 22:08:15 +08:00
yyforyongyu
5e6f10c9b8
lnmock: add new package lnmock to host mocks
This commit introduces a new package to host mocked objects that can be
used for all the unit tests.
2023-01-12 22:08:02 +08:00
yyforyongyu
31a40abd91
htlcswitch: improve loggings for Keystone 2023-01-12 22:08:02 +08:00
Oliver Gugger
6f0383bb4f
Merge pull request #7308 from hieblmi/code-sytle-cleanup
funding: code style cleanup in the funding package
2023-01-12 15:01:42 +01:00
Slyghtning
487cd96acc docs: update release notes 2023-01-12 22:41:35 +10:30
Slyghtning
b47cf7e871 funding: code style cleanup for the funding package 2023-01-12 22:40:51 +10:30
Oliver Gugger
b1645ec46d
Merge pull request #6783 from ErikEk/itest-neutrino-sub-server
itest: neutrino sub-server
2023-01-12 12:20:58 +01:00
Oliver Gugger
3dd9e04b8b
Merge pull request #7306 from YusukeShimizu/docs-invoice-default-expiry
Docs invoice default expiry
2023-01-12 10:29:07 +01:00
Oliver Gugger
79d5a01a81
Merge pull request #7310 from bitromortac/2301-queryprob-docs
routerrpc: update QueryProbability documentation
2023-01-12 10:23:09 +01:00
ErikEk
520c633938 docs: update release note 2023-01-12 13:43:55 +07:00
ErikEk
20fd630465 itest: test neutrino sub server 2023-01-12 13:43:41 +07:00
ErikEk
cc08271c5f itest: add neutrinoclient to harnessnode 2023-01-12 13:24:44 +07:00
bruwbird
71a5dab1a9
docs: add release notes 2023-01-12 09:17:47 +09:00
bruwbird
71f2615190
lnrpc: update invoice request expiry comment 2023-01-12 09:17:34 +09:00
bruwbird
380eb4af83
lncli: fix addinvoice expiry flag comment 2023-01-12 09:17:12 +09:00
bitromortac
045e5cf307
routerrpc: update QueryProbability documentation
Changes the docstring of QueryProbability to reflect changes that were
introduced in #6857.
2023-01-11 16:47:54 +01:00
Elle Mouton
e52461bddb
docs: add release notes for 7055 2023-01-11 13:59:03 +02:00
Elle Mouton
c3a2368f46
multi: migrate towers to use RangeIndex for AckedUpdates
In this commit, a migration is done that takes all the AckedUpdates of
all sessions and stores them in the RangeIndex pattern instead and
deletes the session's old AckedUpdates bucket. All the logic in the code
is also updates in order to write and read from this new structure.
2023-01-11 13:59:03 +02:00
Elle Mouton
50ad10666c
watchtower/wtdb: add migration code for AckedUpdates
In this commit, the code for migration 4 is added. This migration takes
all the existing session acked updates and migrates them to be stored in
the RangeIndex form instead. Note that this migration is not activated
in this commit. This is done in a follow up commit in order to keep this
one smaller.
2023-01-11 13:59:03 +02:00
Elle Mouton
870a91a1e8
watchtower/wtdb: add ability for a multi-tx db migration
In this commit, we add the ability to add a wtdb version migration that
does not get given a transaction but rather a whole db object. This will
be useful for migrations that are best done in multiple transaction in
order to use less RAM.
2023-01-11 13:59:03 +02:00
Elle Mouton
af076d8ff4
channeldb: add shouldFail param to ApplyMigrationWithDB
Add a shouldFail boolean parameter to the migtest ApplyMigrationWithDB
in order to make it easier to test migration failures.
2023-01-11 13:59:03 +02:00
Elle Mouton
0f6229d9e6
watchtower: convert helpers to methods
In preparation for an upcoming commit where some helper functions will
need access to the ClientDB's ackedRangeIndex member, this commit
converts those helper functions into methods on the ClientDB struct.
2023-01-11 13:59:02 +02:00
Elle Mouton
e2ae563304
watchtower: add in-mem acked range index to ClientDB
In this commit, an RangeIndex set is added to the ClientDB along with
getter methods that can be used to populate this in-memory set from the
DB.
2023-01-11 13:59:02 +02:00
Elle Mouton
4ea6c7d2ae
watchtower: refactor putClientSessionBody
Refactor the putClientSessionBody to take in a session sub-bucket rather
than the top-level session bucket. This is mainly to make an upcoming
commit diff easier to parse.
2023-01-11 13:59:02 +02:00
Elle Mouton
25afc8ad90
watchtower: add RangeIndex and tests
In this commit, a new concept called a RangeIndex is introduced. It
provides an efficient way to keep track of numbers added to a set by
keeping track of various ranges instead of individual numbers.

Notably, it also provides a way to map the contents & diffs applied to
the in memory RangeIndex (which uses a sorted array structure) to a
persisted KV structure.
2023-01-11 13:46:55 +02:00
Elle Mouton
fdba28ab7d
watchtower: add channelID index
In this commit, a new channel-ID index is added to the tower client db
with the help of a migration. This index holds a mapping from a
db-assigned-ID (a uint64 encoded using BigSize encoding) to real channel
ID (32 bytes). This mapping will help us save space in future when
persisting references to channels.
2023-01-11 13:46:55 +02:00
Elle Mouton
d03047f313
watchtower: migrate channel summaries
In this commit a migration of the tower client db is done. The migration
creates a new top-level cChanDetailsBkt bucket and for each channel
found in the old cChanSummaryBkt bucket, it creates a new sub-bucket. In
the subbucket, the ClientChanSummary is then stored under the
cChannelSummary key. The reason for this migration is that it will be
useful in future when we want to store more easily accessible data under
a specific client ID.
2023-01-11 13:46:55 +02:00
Elle Mouton
4ab8c57eae
watchtower: make better use of getChanSummary
Small refactor just to make the upcoming commit easier to parse. In
this commit, we make better use of the getChanSummary helper function.
2023-01-11 13:46:54 +02:00
Oliver Gugger
b1d6991b27
Merge pull request #7153 from carlaKC/7093-custommessage
multi: Add ability to handle protocol-range messages in Custom Message APIs
2023-01-11 09:52:40 +01:00
Oliver Gugger
ef8cf73d4c
Merge pull request #7295 from guggero/build-cache
GitHub: fix Golang build cache in actions
2023-01-06 14:11:34 +01:00
Oliver Gugger
f16a2f11df
docs: add release notes 2023-01-06 09:18:28 +01:00
Oliver Gugger
a074c801d1
GitHub: add job ID to cache key
To avoid the problem where multiple jobs try to create the same cache
entry, we add the GitHub job ID to the cache key.
The two restore keys make it possible that a job can also restore a
cache entry from another job if none for the current job exist yet.
2023-01-06 09:18:28 +01:00
Oliver Gugger
984fc3a2ec
GitHub: make setup-go action more versatile
With this commit we allow the Go version that is set up to be
configurable and not dependent on a specific environment variable. This
will allow us to eventually extract the action into a tooling
repository.
2023-01-06 09:18:26 +01:00