You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Since ACINQ/eclair#1723 was merged since a while I think we could enable splitting payments via different trampoline nodes. Currently, this is prevented:
On testnet, I have two channels, each with a different trampoline. I try to send an amount (400000 sat) that forces splitting (legacy multipart trampoline payment). On testnet, the above restriction is not active, so it should work to send via different trampoline nodes. The payment reaches the trampoline nodes, but at the receiver side (an LND instance) I get:
2021-12-20 16:05:50.486 [DBG] INVC: Invoice(pay_hash=XXX, pay_addr=XXX): failure resolution result outcome: set total too low for invoice, at accept height: 2132478, amt=270211462 mSAT, expiry=2132518, circuit=(Chan ID=XXX, HTLC ID=24), mpp=total=270211462 mSAT, addr=XXX, amp=<nil>
This means that the trampoline payments didn't include the correct total_msat value for the invoice, which is why it makes sense that the client receives INCORRECT_OR_UNKNOWN_PAYMENT_DETAILS. From what I can see, is that Electrum includes the correct total_msat value, so it could be a bug in eclair, but I'm unsure.
Anyhow, enabling mpp trampoline payments would further increase robustness and usefulness having channels with different trampolines.
The trampoline payloads look like this for instance:
The legacy splitting is an Eclair bug (private communication), I'm going to open an issue over there.
Further tests for E2E are encouraging:
E2E Scenario split via two trampolines (working):
S -C1-> T1 -C3-> R
S -C2-> T2 -C4-> R
E2E Scenario 2 split via two trampolines, T1 aggregates (working):
S -C1-> T1 -C3-> R
S -C2-> T1
S -C4-> T2 -C5-> R
There are some issues with using second trampoline hops. I think we should remove those and reintroduce in a later PR with proper error accounting (fees).
Since ACINQ/eclair#1723 was merged since a while I think we could enable splitting payments via different trampoline nodes. Currently, this is prevented:
electrum/electrum/lnworker.py
Line 1549 in bdbd593
On testnet, I have two channels, each with a different trampoline. I try to send an amount (400000 sat) that forces splitting (legacy multipart trampoline payment). On testnet, the above restriction is not active, so it should work to send via different trampoline nodes. The payment reaches the trampoline nodes, but at the receiver side (an LND instance) I get:
This means that the trampoline payments didn't include the correct
total_msat
value for the invoice, which is why it makes sense that the client receivesINCORRECT_OR_UNKNOWN_PAYMENT_DETAILS
. From what I can see, is that Electrum includes the correcttotal_msat
value, so it could be a bug in eclair, but I'm unsure.Anyhow, enabling mpp trampoline payments would further increase robustness and usefulness having channels with different trampolines.
The trampoline payloads look like this for instance:
The text was updated successfully, but these errors were encountered: