mirror of
https://github.com/lightningnetwork/lnd.git
synced 2024-11-19 18:10:34 +01:00
3d5f33a0cf
In case of a multi shard payment with more than one in-flight shards, one shard quitting with a terminal failure will stop the payment lifecycle and close the `shardHandler`'s `quit` channel. In the `collectResult` function we're waiting for the `Switch` to asynchronously return a result for each shard. This may have been interrupted by the aformentioned `quit` channel's closing skipping attempt failure (or success) notification towards the control tower and therefore skipping proper settle/fail info fill in the channel db. Since payments have a composite state of a global failure reason and settle/fail info for all attempts, any attempt with an unfilled settle/fail info keeps a payment in-flight even if the payment itself isn't in-flight anymore. |
||
---|---|---|
.. | ||
chainview | ||
localchans | ||
route | ||
shards | ||
testdata | ||
ann_validation.go | ||
bandwidth_test.go | ||
bandwidth.go | ||
control_tower_test.go | ||
control_tower.go | ||
errors.go | ||
graph.go | ||
heap_test.go | ||
heap.go | ||
integrated_routing_context_test.go | ||
integrated_routing_test.go | ||
log.go | ||
missioncontrol_state_test.go | ||
missioncontrol_state.go | ||
missioncontrol_store_test.go | ||
missioncontrol_store.go | ||
missioncontrol_test.go | ||
missioncontrol.go | ||
mock_graph_test.go | ||
mock_test.go | ||
nodepair.go | ||
notifications_test.go | ||
notifications.go | ||
pathfind_test.go | ||
pathfind.go | ||
payment_lifecycle_test.go | ||
payment_lifecycle.go | ||
payment_session_source.go | ||
payment_session_test.go | ||
payment_session.go | ||
probability_estimator_test.go | ||
probability_estimator.go | ||
README.md | ||
result_interpretation_test.go | ||
result_interpretation.go | ||
router_test.go | ||
router.go | ||
setup_test.go | ||
stats.go | ||
unified_policies_test.go | ||
unified_policies.go | ||
validation_barrier_test.go | ||
validation_barrier.go |
routing
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