-
Notifications
You must be signed in to change notification settings - Fork 2.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
In-memory graph cache for faster pathfinding #5642
Commits on Sep 29, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 639faee - Browse repository at this point
Copy the full SHA 639faeeView commit details -
Configuration menu - View commit details
-
Copy full SHA for 292b8e1 - Browse repository at this point
Copy the full SHA 292b8e1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 60cccf8 - Browse repository at this point
Copy the full SHA 60cccf8View commit details -
channeldb+funding: move opening channel state to DB
The funding manager doesn't need to know the details of the underlying storage of the opening channel state, so we move the actual store and retrieval into the channel database.
Configuration menu - View commit details
-
Copy full SHA for c1f686f - Browse repository at this point
Copy the full SHA c1f686fView commit details -
multi: extract address source into interface
As a preparation to have the method for querying the addresses of a node separate from the channel state, we extract that method out into its own interface.
Configuration menu - View commit details
-
Copy full SHA for ddea833 - Browse repository at this point
Copy the full SHA ddea833View commit details -
Configuration menu - View commit details
-
Copy full SHA for 11cf421 - Browse repository at this point
Copy the full SHA 11cf421View commit details -
To further separate the channel graph from the channel state, we refactor the AddrsForNode method to use the graphs's public methods instead of directly accessing any buckets. This makes sure that we can have the channel state cached with just its buckets while not using a kvdb level cache for the graph. At the same time we refactor the graph's test to also be less dependent upon the channel state DB.
Configuration menu - View commit details
-
Copy full SHA for d6fa912 - Browse repository at this point
Copy the full SHA d6fa912View commit details -
channeldb+routing: add in-memory graph
Adds an in-memory channel graph cache for faster pathfinding. Original PoC by: Joost Jager Co-Authored by: Oliver Gugger
Configuration menu - View commit details
-
Copy full SHA for 369c09b - Browse repository at this point
Copy the full SHA 369c09bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 15d3f62 - Browse repository at this point
Copy the full SHA 15d3f62View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1d1c42f - Browse repository at this point
Copy the full SHA 1d1c42fView commit details -
Configuration menu - View commit details
-
Copy full SHA for bf27d05 - Browse repository at this point
Copy the full SHA bf27d05View commit details -
lnd+channeldb: pre-allocate cache size
To avoid the channel map needing to be re-grown while we fill the cache initially, we might as well pre-allocate it with a somewhat sane value to decrease the number of grow events.
Configuration menu - View commit details
-
Copy full SHA for a95a372 - Browse repository at this point
Copy the full SHA a95a372View commit details -
Configuration menu - View commit details
-
Copy full SHA for a5202a8 - Browse repository at this point
Copy the full SHA a5202a8View commit details -
channeldb: optimize memory usage of initial cache fill
With this commit we use an optimized version of the node iteration that causes fewer memory allocations by only loading the part of the graph node that we actually need to know for the cache.
Configuration menu - View commit details
-
Copy full SHA for 6240851 - Browse repository at this point
Copy the full SHA 6240851View commit details -
itest: fix flake in update_channel_status itest
This commit fixes a flake in the channel status update itest that occurred if Carol got a channel edge update for a channel before it heard of the channel in the first place. To avoid that, we wait for Carol to sync her graph before sending out channel edge or policy updates. As always when we touch itest code, we bring the formatting and use of the require library up to date.
Configuration menu - View commit details
-
Copy full SHA for 493262e - Browse repository at this point
Copy the full SHA 493262eView commit details