Commit Graph

17887 Commits

Author SHA1 Message Date
Keagan McClelland
ac0c24aa7b
htlcswitch: don't pass pending update counts into quiescer
This change simplifies some of the quiescer responsibilities in
favor of making the link check whether or not it has a clean state
to be able to send or receive an stfu. This change was made on the
basis that the only use the quiescer makes of this information is
to assess that it is or is not zero. Further the difficulty of
checking this condition in the link is barely more burdensome than
selecting the proper information to pass to the quiescer anyway.
2024-11-26 14:13:43 -07:00
Keagan McClelland
a4c49a88f1
htlcswitch: add quiescence timeout that is aborted by Resume 2024-11-26 14:13:43 -07:00
Keagan McClelland
111c9b05f3
htlcswitch+peer: allow the disabling of quiescence
Here we add a flag where we can disable quiescence. This will be used
in the case where the feature is not negotiated with our peer.
2024-11-26 14:13:39 -07:00
Keagan McClelland
48ee643c0d
htlcswitch: implement noop quiescer
In this commit we implement a noop quiescer that we will use when
the feature hasn't been negotiated. This will make it far easier to
manage quiescence operations without having a number of if statements
in the link logic.
2024-11-26 13:52:54 -07:00
Keagan McClelland
5906ca2537
htlcswitch: add test for deferred processing remote adds when quiescent 2024-11-26 13:52:54 -07:00
Keagan McClelland
4fbab45a5f
htlcswitch: defer processRemoteAdds when quiescent
In this commit we defer processRemoteAdds using a new mechanism on
the quiescer where we capture a closure that needs to be run. We
do this because we need to avoid the scenario where we send back
immediate resolutions to the newly added HTLCs when quiescent as
it is a protocol violation. It is not enough for us to simply defer
sending the messages since the purpose of quiescence itself is to
have well-defined and agreed upon channel state. If, for whatever
reason, the node (or connection) is restarted between when these
hooks are captured and when they are ultimately run, they will
be resolved by the resolveFwdPkgs logic when the link comes back
up.

In a future commit we will explicitly call the quiescer's resume
method when it is OK for htlc traffic to commence.
2024-11-26 13:52:53 -07:00
Keagan McClelland
77fd8c6a21
itest+lntest: add itest for Quiesce RPC method 2024-11-26 13:52:51 -07:00
Keagan McClelland
7255b7357c
htlcswitch: implement InitStfu link operation 2024-11-26 13:51:57 -07:00
Keagan McClelland
bca1516429
lnd: finish Quiesce implementation using new link op 2024-11-26 13:51:57 -07:00
Keagan McClelland
70e3804121
htlcswitch: add link operation for initiating quiescence 2024-11-26 13:51:57 -07:00
Keagan McClelland
a085b59814
lnd: implement new Quiesce RPC with link operation stub 2024-11-26 13:51:57 -07:00
Keagan McClelland
99f5ca4018
lnrpc add new RPC 'Quiesce' to protobuf definitions 2024-11-26 13:51:57 -07:00
Keagan McClelland
7a5b55a473
lnwire: signal that we support quiescence 2024-11-26 13:51:56 -07:00
Keagan McClelland
6d30ab6c4f
htlcswitch: drop connection if link updates after stfu 2024-11-26 13:51:56 -07:00
Keagan McClelland
44c87ef1d7
htlcswitch: bounce packets when quiescent 2024-11-26 13:51:56 -07:00
Keagan McClelland
c9debea408
lnwire: add IsChannelUpdate function to distinguish channel updates 2024-11-26 13:51:56 -07:00
Keagan McClelland
2ece1fdc54
htlcswitch: implement stfu response
htlcswitch: use quiescer SendOwedStfu method in link stfu implementation
2024-11-26 13:51:56 -07:00
Keagan McClelland
f5b7866287
htlcswitch: define state machine for quiescence
htlcswitch: add sendOwedStfu method to quiescer
2024-11-26 13:51:46 -07:00
Elle
fbeab726e1
Merge pull request #8390 from carlaKC/7883-experimental-endorsement
Add Experimental Endorsement Signalling
2024-11-26 09:43:22 +02:00
Keagan McClelland
2a1384174b
tlv: update to fn v2 2024-11-25 13:25:52 -07:00
Oliver Gugger
66940024ac
Merge pull request #9290 from w3irdrobot/broadcast-misspelling
docs: fix broadcast misspelling
2024-11-25 12:25:51 +01:00
Oliver Gugger
7e8dc2d389
Merge pull request #9301 from chuangjinglu/master
multi: fix some function names in interface comment
2024-11-25 11:59:01 +01:00
chuangjinglu
bcfd8d5b47 multi: fix some function names in interface comment
Signed-off-by: chuangjinglu <chuangjinglu@outlook.com>
2024-11-25 10:49:00 +08:00
w3irdrobot
d3bff47167
docs: fix broadcast misspelling 2024-11-22 16:20:02 -05:00
Carla Kirk-Cohen
a8c159b1c7
docs: add experimental endorsement 2024-11-22 09:31:47 -05:00
Carla Kirk-Cohen
7a876e8898
itest: add coverage for experimental endorsement 2024-11-22 09:31:46 -05:00
Carla Kirk-Cohen
f02bb58486
multi: add experimental endorsement feature bit and disable option 2024-11-22 09:16:58 -05:00
Carla Kirk-Cohen
4bb5b0c27c
lnrpc: set a zero value endorsement signal on sender outgoing htlc
Before we have sufficient signaling in the network to relay this
signal, set a zero value experimental endorsement value on the sender's
outgoing htlc. Once the network is relaying this signal and a flag day
has been set, we'll be able to set a non-zero value here.
2024-11-22 09:16:57 -05:00
Carla Kirk-Cohen
774bfa740a
htlcswitch: relay experimental endorsement signal with update_add_htlc 2024-11-22 09:16:56 -05:00
Oliver Gugger
94f7ed46de
Merge pull request #8998 from Abdulkbk/trx-pagination
pagination: add pagination to wallet transactions
2024-11-22 09:30:11 +01:00
Oliver Gugger
38ec1a1c64
Merge pull request #8805 from breez/jssdwt-insert-edge-when-not-found
localchans: recreate missing edge if not found
2024-11-22 08:42:51 +01:00
Abdullahi Yunus
1c6790bd9b add release note 2024-11-22 08:23:58 +01:00
Abdullahi Yunus
6ee8d2c9b9 lnwallettest: test for tranasctions pagination
In this commit, we test for different values of index_offset and
max_transactions settings when getting transactions to make sure
the right number of transactions are returned along with the right
first and last indices.
2024-11-22 08:23:58 +01:00
Abdullahi Yunus
762d01536b multi: return txns first and last indices
In this commit we introduce first and last indices for the
tranasctions returned which can be used to seek for further
transactions in a pagination style.

Signed-off-by: Abdullahi Yunus <abdoollahikbk@gmail.com>
2024-11-22 08:22:55 +01:00
Abdullahi Yunus
cd1df4ac34 multi: modify listtxn definition
This commit modifies listtransactiondetails method definition to
take in additional params: index_offset and maxTxn
2024-11-22 08:21:27 +01:00
Oliver Gugger
41c2521e8a
Merge pull request #9291 from yyforyongyu/fix-log-unit
lnwallet: log the amounts in the same unit
2024-11-21 14:46:46 +01:00
yyforyongyu
b243394049
lnwallet: log the amounts in the same unit 2024-11-21 20:42:47 +08:00
Jesse de Wit
266531271b
localchans: do error if an edge policy is missing 2024-11-21 10:57:54 +01:00
Oliver Gugger
9fc6c998ba
Merge pull request #9292 from yyforyongyu/fix-graphbuiler-shutdown
lnd: stop `graphBuilder` during shutdown
2024-11-21 10:33:52 +01:00
Oliver Gugger
8b99d71f93
Merge pull request #9284 from ProofOfKeags/update/fn2
fn: update go.mod to v2
2024-11-21 09:53:05 +01:00
yyforyongyu
57084804d4
lnd: stop graphBuilder during shutdown 2024-11-21 15:37:49 +08:00
Keagan McClelland
a3e87cfebd
fn: update fn/go.mod to v2 2024-11-20 10:28:55 -07:00
Abdullahi Yunus
037db4278a lnrpc: modify gettransaction parameters
This commit adds index_offset and max_transactions to the list
of parameters passed during gettransactions call. index_offset
specify transactions to skip and max_transactions the total
transactions returned
2024-11-20 18:02:00 +01:00
Oliver Gugger
a4195fa2ce
Merge pull request #9288 from lightningnetwork/channel-acceptor-commitment-type
[custom channels]: add taproot overlay channel type to channel acceptor
2024-11-20 15:29:30 +01:00
Oliver Gugger
4b563e6f49
Merge pull request #9253 from ziggie1984/fix-chanArb-deadlock
fix chanArb deadlock
2024-11-20 10:41:03 +01:00
Oliver Gugger
1c3caf47bb
docs: add release notes 2024-11-20 10:37:55 +01:00
Oliver Gugger
c809340095
chanacceptor: add custom channel commitment type 2024-11-20 10:37:55 +01:00
Bansal
c74d970b77
Update ruby.md
removed googleapis refernces
2024-11-20 13:59:00 +05:30
Bansal
11942cfd5e
Update python.md 2024-11-20 13:57:31 +05:30
ziggie
879041b75e
docs: add release notes 2024-11-20 09:19:09 +01:00