lnd.xprv/routing
Juan Pablo Civile 2141713936 routing: avoid walking all nodes for path finding if we don't need to
Calling `ForEachNode` hits the DB, and allocates and parses every node
in the graph. Walking the channels also loads nodes from the DB, so this
meant that each node was read/parsed/allocated several times per run.

This reduces runtime by ~10ms and memory usage by ~4mb.
2019-10-24 21:31:30 -03:00
..
chainview routing/chainview: check GetCFilter error 2019-10-15 10:31:25 +02:00
localchans multi: update internals to support updating max htlc 2019-09-23 13:07:10 +02:00
route routing/route: add vertex constructor for hex string 2019-09-17 11:11:00 +02:00
testdata routing: update test edge policy fields to include max htlc + new flags 2019-03-01 08:05:27 -08:00
ann_validation.go routing: skip max htlc validation when capacity is 0 2019-04-18 21:57:38 -07:00
conf_experimental.go routing/conf: add experimental assume valid conf 2018-09-03 20:15:18 -07:00
conf.go routing/conf: add experimental assume valid conf 2018-09-03 20:15:18 -07:00
control_tower_test.go routing: extend path finding to be TLV-EOB aware, allow dest TLV records 2019-08-22 18:53:01 -07:00
control_tower.go routing+routerrpc+channeldb: return route on invalid payment details 2019-07-04 09:27:16 +02:00
errors.go routing: return ErrRejected if found in reject cache 2018-08-23 07:40:40 +02:00
graph.go routing: rewrite package to conform to BOLT07 and factor in fees+timelocks 2016-12-27 16:44:22 -08:00
heap_test.go routing: add index map to distanceHeap 2019-07-12 06:08:01 -04:00
heap.go multi: remove dead code 2019-09-10 17:21:59 +02:00
log.go multi: init subsystem loggers via build pkg 2018-10-05 13:04:45 +09:00
missioncontrol_store_test.go lnwire+htlcswitch: report height for invalid payment details failure 2019-09-16 10:10:20 +02:00
missioncontrol_store.go routing: persist mission control data 2019-07-31 08:44:00 +02:00
missioncontrol_test.go routing+routerrpc: improve prob. estimation for untried connections 2019-10-22 15:52:38 +02:00
missioncontrol.go routing+routerrpc: improve prob. estimation for untried connections 2019-10-22 15:52:38 +02:00
mock_test.go routing: process successes in mission control 2019-08-23 09:15:41 +02:00
nodepair.go routing: extended DirectedNodePair functionality 2019-08-13 18:45:06 +02:00
notifications_test.go multi: fix canceled spelling 2019-10-03 17:27:36 +02:00
notifications.go routing: add color to node update 2019-05-23 10:52:12 +02:00
pathfind_test.go routing+routerrpc: take max cltv limit into account within path finding 2019-10-11 18:04:49 -04:00
pathfind.go routing: avoid walking all nodes for path finding if we don't need to 2019-10-24 21:31:30 -03:00
payment_lifecycle.go routing: process successes in mission control 2019-08-23 09:15:41 +02:00
payment_session_source.go routing: query bandwidth hints before each payment attempt 2019-08-17 10:24:07 +02:00
payment_session_test.go routing+routerrpc: take max cltv limit into account within path finding 2019-10-11 18:04:49 -04:00
payment_session.go routing+routerrpc: take max cltv limit into account within path finding 2019-10-11 18:04:49 -04:00
probability_estimator_test.go routing+routerrpc: improve prob. estimation for untried connections 2019-10-22 15:52:38 +02:00
probability_estimator.go routing+routerrpc: improve prob. estimation for untried connections 2019-10-22 15:52:38 +02:00
README.md multi: fix formatting issues in packge README's 2017-03-27 16:25:25 -07:00
result_interpretation_test.go routing: also fail pairs for node-level failures 2019-10-22 15:52:34 +02:00
result_interpretation.go routing: also fail pairs for node-level failures 2019-10-22 15:52:34 +02:00
router_test.go routing+routerrpc: improve prob. estimation for untried connections 2019-10-22 15:52:38 +02:00
router.go routing+routerrpc: take max cltv limit into account within path finding 2019-10-11 18:04:49 -04:00
stats.go routing/router: log aggregate graph processing stats 2019-06-13 18:18:30 -07:00
validation_barrier_test.go routing/validation_barrier_test: test semaphore and quit 2018-05-08 16:32:08 -07:00
validation_barrier.go multi: move Route to sub-pkg routing/route 2019-04-29 14:52:33 +02:00

routing

Build Status MIT licensed GoDoc

The routing package implements authentication+validation of channel announcements, pruning of the channel graph, path finding within the network, sending outgoing payments into the network and synchronizing new peers to our channel graph state.

Installation and Updating

$ go get -u github.com/lightningnetwork/lnd/routing