-
Notifications
You must be signed in to change notification settings - Fork 3.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Multi-trampoline multipart payments #7623
Conversation
8bc24d5
to
fe26629
Compare
Rebased. |
9e764fb
to
c6cb85d
Compare
Why remove the second hop TF for the legacy case -- can't we just use the same approach as for e2e and revert to a global fee level? |
My impression is that currently it takes many attempts to make larger payments, with quite a few fee bumps involved. The is some dynamics between random choice of second forwarder and insufficient fees which gets doubled up if we consider a global policy. I don't know if the next makes fully sense (for say a 1Msat payment) or if there are other edge cases, there could be more fee bumps: two TF scenario (kind of worst case):
fee level: 4 -> 0.001000 * 1_000_000 sat = 1000 sat -> 2000 sat single TF scenario:
fee level: 2 -> 0.000100 * 1_000_000 sat = 100 sat Of course there's a tradeoff between reliability, fees, payment time and privacy. I didn't make many large trampoline payments but from my experience they seemed rather unreliable. |
@bitromortac can you clarify in the example above, whether those are MPPs or sequential attempts? |
Those would be sequential attempts, but considering the fee_level dict, going back to a global fee level could fix things, as you wrote. |
c6cb85d
to
b21df8c
Compare
I reverted to a global fee rate and added the second forwarder again for legacy payments. |
* Refactor `create_trampoline_route`. * Enables end-to-end multi-trampoline multipart payments. Trampoline-to-legacy payments are still not enabled, as this is currently not supported by Eclair. * Reverts to a global trampoline fee level, as trampoline failures are currently not handled properly, see (spesmilo#7648), which doubles fee rates.
b21df8c
to
a4f5cfc
Compare
The PR looks good to me. |
I will explicitly test again an e2e payment to a wallet with a channel which has not enough receiving capacity with ACINQ and will let you know. |
I tested myself, it looks like the ACINQ node no longer tries |
Based on #7426 (first four commits) andpartially fixes #7604, related to #7648.create_trampoline_route
.