lnd.xprv/routing
Olaoluwa Osuntokun 2e75499787
channeldb+routing: move adding shell nodes into db txn of AddChannelEdge
In this commit, we fix a slight race condition that can occur when we go
to add a shell node for a node announcement, but then right afterwards,
a new block arrives that causes us to prune an unconnected node. To
ensure this doesn't happen, we now add shell nodes within the same db
transaction as AddChannelEdge. This ensures that the state is fully
consistent and shell nodes will be added atomically along with the new
channel edge.

As a result of this change, we no longer need to add shell nodes within
the ChannelRouter, as the database will take care of this operation as
it should.
2018-07-22 21:02:53 -07:00
..
chainview routing/chainview: update API usage for neutrino due to recent changes 2018-07-13 17:15:12 -07:00
testdata routing: fix incorrect expiry values in spec_example.json 2018-06-26 17:29:42 -07:00
errors.go routing: allow specifying a fee limit during route construction 2018-06-12 18:14:48 -07: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: correct recent type change in heap_test.go 2018-02-12 16:44:42 -08:00
heap.go routing: weight findPath more heavily towards fees during edge relaxation 2018-02-12 16:27:38 -08:00
log.go lnd: remove seelog logger 2017-06-25 14:19:56 +01:00
missioncontrol.go multi: switch over import paths from roasbeef/* to btcsuite/* 2018-07-13 17:05:39 -07:00
notifications_test.go multi: switch over import paths from roasbeef/* to btcsuite/* 2018-07-13 17:05:39 -07:00
notifications.go multi: switch over import paths from roasbeef/* to btcsuite/* 2018-07-13 17:05:39 -07:00
pathfind_test.go multi: switch over import paths from roasbeef/* to btcsuite/* 2018-07-13 17:05:39 -07:00
pathfind.go multi: switch over import paths from roasbeef/* to btcsuite/* 2018-07-13 17:05:39 -07:00
README.md multi: fix formatting issues in packge README's 2017-03-27 16:25:25 -07:00
router_test.go multi: switch over import paths from roasbeef/* to btcsuite/* 2018-07-13 17:05:39 -07:00
router.go channeldb+routing: move adding shell nodes into db txn of AddChannelEdge 2018-07-22 21:02:53 -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 routing/validation_barrier: adds ErrVBarrierShuttingDown 2018-05-08 16:32:08 -07: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