Skip to content

Conversation

@rustyrussell
Copy link
Contributor

@rustyrussell rustyrussell commented Feb 14, 2020

Thanks to @s-tikhomirov for the great bug report!

Fixes: #3517
Changelog-None

Breaks `tools/build-release.sh`

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
We can actually fail to find a shorter route, but it's a fairly obscure case.

Fixes: ElementsProject#3517
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Copy link
Collaborator

@m-schmoock m-schmoock left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this needs a testcase, but I couldn't trigger it, do you know a setup that lead to this code?

@s-tikhomirov wanted to find a parallel local paths by setting maxhops to 1 and excluding specific channels. As I see its somehow relative to having a higher fee parallel path that may be selected internally by using a lower risk factor, and also a specific amount is required to trigger this.

@cdecker
Copy link
Member

cdecker commented Feb 14, 2020

ACK 992dce8

@rustyrussell
Copy link
Contributor Author

It would be tricky, but possible, to have a situation where we find a route with low riskfactor, and fail with high. That's what happens here.

Imagine A with channels to B & C, both with channels to D, which goes to E. A-B is low fee, high delay. A-C is higher fee, lower delay.

With low riskfactor we choose A-B, with high, A-C. Now, when we get to D we have different amounts, and the higher amount can't do D-E due to the max.

@rustyrussell rustyrussell merged commit 77e3df0 into ElementsProject:master Feb 14, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Testnet channel 1451585x82x0 crashes routing

3 participants