Skip to content
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

Graph pruning #521

Merged
merged 2 commits into from
Aug 21, 2019
Merged

Graph pruning #521

merged 2 commits into from
Aug 21, 2019

Conversation

palango
Copy link
Contributor

@palango palango commented Aug 20, 2019

It showed in #520 that in bigger token networks the search was blocking
the PFS for longer intervals. The main reason for that was that the path
finding was trying many routes where participants were offline.

This can easily be improved by pruning the graph on unreachable nodes
before the routing, so that the graph on which the search is done
consists only of reachable nodes.

This can be improved further in the future by also pruning channels with
to little capacity, etc.

Fixes #520

@palango palango requested a review from Dominik1999 August 20, 2019 14:43
@codecov
Copy link

codecov bot commented Aug 20, 2019

Codecov Report

Merging #521 into master will decrease coverage by <.01%.
The diff coverage is 100%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master     #521      +/-   ##
==========================================
- Coverage   91.23%   91.22%   -0.01%     
==========================================
  Files          36       36              
  Lines        2258     2269      +11     
  Branches      287      290       +3     
==========================================
+ Hits         2060     2070      +10     
  Misses        150      150              
- Partials       48       49       +1
Impacted Files Coverage Δ
src/raiden_libs/utils.py 100% <100%> (ø) ⬆️
src/pathfinding_service/model/token_network.py 95.09% <100%> (-1.58%) ⬇️
src/pathfinding_service/api.py 95.7% <100%> (+0.81%) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update bf5bdca...ac83828. Read the comment docs.

Copy link
Contributor

@Dominik1999 Dominik1999 left a comment

Choose a reason for hiding this comment

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

left tiny comments. Looks very good. I like the performance test

src/pathfinding_service/api.py Show resolved Hide resolved
src/pathfinding_service/model/token_network.py Outdated Show resolved Hide resolved
src/raiden_libs/utils.py Show resolved Hide resolved
tests/pathfinding/test_graphs.py Show resolved Hide resolved
It showed in raiden-network#520 that in bigger token networks the search was blocking
the PFS for longer intervals. The main reason for that was that the path
finding was trying many routes where participants were offline.

This can easily be improved by pruning the graph on unreachable nodes
before the routing, so that the graph on which the search is done
consists only of reachable nodes.

This can be improved further in the future by also pruning channels with
to little capacity, etc.
Copy link
Contributor

@Dominik1999 Dominik1999 left a comment

Choose a reason for hiding this comment

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

lgtm

@Dominik1999 Dominik1999 merged commit 010007e into raiden-network:master Aug 21, 2019
@palango palango deleted the graph-pruning branch August 21, 2019 12:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Long blocking route search
2 participants