lightning
lightning copied to clipboard
Can't pay 0.1btc invoice to Kraken via direct channel
Setting maxfeepercent=0 in all tests. The channel has enough funds.
I opened a channel to Kraken. If I create an invoice of 0.01btc, my direct channel is chosen and it works. If I try to make 0.1btc payment the payment is split up and all routes CLN finds are invalid as the fee is too high. I would think all funds would just be moved over my own channel, but this does not happen.
It seems the maximum amount I can pay is 2**32 msat, so once it needs to go mpp it fails as it won't reuse the direct channel.
I suspect pay cleverness of splitting and shadow routing by default to benefit "privacy" might be getting in the way. Other people bypass pay by using the lower level sendpay with an explicit route for reasons like this. It isn't easy to use.
What's the idea of splitting when there's a big enough direct channel between nodes? Trying to improve sender privacy? Receiver anyway doesn't know with 100% certainity who is the sender.
@kristapsk The maximum amount to be spend in a single payment is 2**32msat. so paying 0.1btc is not possible with out splitting
I've seen CLN trying to split also smaller payments when there is direct channel with enough outbound funds available.
Splitting is the behavior of the pay plugin. The LN protocol does not require it to be split. It can work as one or many parts just the same.
IMO it should be able to handle paying all parts over a direct single channel. It sounds like a bug if it can't.