lnd.xprv/routing
Johan T. Halseth 36a80b4d51
routing/router: enable MPP sends for SendToRoute
This commit enables MPP sends for SendToRoute, by allowing launching
another payment attempt if the hash is already registered with the
ControlTower.

We also set the total payment amount of of the payment from mpp record,
to indicate that the shard value might be different from the total
payment value.

We only mark non-MPP payments as failed in the database after
encountering a failure, since we might want to try more shards for MPP.
For now this means that MPP sendToRoute payments will be failed
only after a restart has happened.
2020-04-02 19:29:15 +02:00
..
chainview routing/chainview: check GetCFilter error 2019-10-15 10:31:25 +02:00
localchans routing+lnrpc+lncli: allow setting min htlc policy 2019-12-11 00:17:08 +01:00
route routing/route: define route.ReceiverAmt() method 2020-04-02 10:24:34 +02:00
testdata routing: fix max route length test 2019-12-20 11:00:03 +01: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 channeldb+routing: store all payment htlcs 2020-03-09 18:31:33 +01:00
control_tower.go routing: add FetchPayment method to ControlTower 2020-04-02 10:24:34 +02:00
errors.go routing/payment_lifecycle: return recorded errors 2020-04-02 10:24:35 +02:00
graph.go routing: convert to use new kvdb abstraction 2020-03-18 19:34:58 -07:00
heap_test.go routing: optimize path finding structures 2019-10-24 21:38:07 -03:00
heap.go routing: limit routing info size during pathfinding 2019-12-20 11:00:05 +01:00
integrated_routing_context_test.go routing: convert to use new kvdb abstraction 2020-03-18 19:34:58 -07:00
integrated_routing_test.go routing/test: test probability extrapolation 2020-02-11 14:19:13 +01:00
log.go routing: define subsystem constant 2019-12-11 00:17:04 +01:00
missioncontrol_state_test.go routing: stricter mission control state failure updates 2020-03-28 07:49:23 +01:00
missioncontrol_state.go routing: stricter mission control state failure updates 2020-03-28 07:49:23 +01:00
missioncontrol_store_test.go routing: convert to use new kvdb abstraction 2020-03-18 19:34:58 -07:00
missioncontrol_store.go routing: convert to use new kvdb abstraction 2020-03-18 19:34:58 -07:00
missioncontrol_test.go routing: convert to use new kvdb abstraction 2020-03-18 19:34:58 -07:00
missioncontrol.go Merge pull request #4113 from joostjager/mc-failure-overwrite 2020-03-28 11:10:26 +01:00
mock_graph_test.go routing/test: test probability extrapolation 2020-02-11 14:19:13 +01:00
mock_test.go routing/payment_lifecycle_test: add step for terminal failure 2020-04-02 19:29:15 +02:00
nodepair.go routing: extended DirectedNodePair functionality 2019-08-13 18:45:06 +02:00
notifications_test.go multi: remove LocalFeatures and GlobalFeatures 2019-11-08 05:32:00 -08:00
notifications.go routing: clean up locking on topology change 2020-01-02 18:03:48 +01:00
pathfind_test.go routerrpc: update final cltv delta default 2020-01-14 21:03:24 +01:00
pathfind.go routing: log amount for probability 2020-03-24 19:02:38 +01:00
payment_lifecycle_test.go routing/payment_lifecycle_test: add MPP test cases 2020-04-02 19:29:15 +02:00
payment_lifecycle.go routing/payment_lifecycle+channeldb: enable multi shard send 2020-04-02 19:29:15 +02:00
payment_session_source.go routing/payment_session: remove prebuilt payment session 2020-04-02 10:24:35 +02:00
payment_session_test.go routing/payment_session: make RequestRoute take max amt, fee limit and 2020-04-02 10:24:33 +02:00
payment_session.go routing/payment_session: remove prebuilt payment session 2020-04-02 10:24:35 +02:00
probability_estimator_test.go routing: track amt ranges in mc 2019-11-22 11:17:28 +01:00
probability_estimator.go routing: track amt ranges in mc 2019-11-22 11:17:28 +01:00
README.md multi: fix formatting issues in packge README's 2017-03-27 16:25:25 -07:00
result_interpretation_test.go routing: penalize node-level failures harder 2020-01-21 09:06:42 +01:00
result_interpretation.go routing: penalize node-level failures harder 2020-01-21 09:06:42 +01:00
router_test.go routing tests: move TestRouterPaymentStateMachine to own file 2020-04-02 19:29:14 +02:00
router.go routing/router: enable MPP sends for SendToRoute 2020-04-02 19:29:15 +02:00
stats.go routing/router: log aggregate graph processing stats 2019-06-13 18:18:30 -07:00
unified_policies_test.go routing: use unified policy for path finding 2019-10-25 11:22:28 +02:00
unified_policies.go routing: add graph interface 2020-02-11 13:35:38 +01: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