Skip to content

Commit

Permalink
Change default "impossibility penalty" to one Bitcoin
Browse files Browse the repository at this point in the history
In general we should avoid taking paths that we are confident will
not work as much possible, but we should be willing to try each
payment at least once, even if its over a channel that failed
recently. A full Bitcoin penalty for such a channel seems
reasonable - lightning fees are unlikely to ever reach that point
so such channels will be scored much worse than any other potential
path, while still being below `u64::max_value()`.
  • Loading branch information
TheBlueMatt committed Jul 14, 2022
1 parent ec2b1ce commit a3547e2
Showing 1 changed file with 6 additions and 3 deletions.
9 changes: 6 additions & 3 deletions lightning/src/routing/scoring.rs
Expand Up @@ -406,7 +406,7 @@ pub struct ProbabilisticScoringParameters {
/// If you wish to avoid creating paths with such channels entirely, setting this to a value of
/// `u64::max_value()` will guarantee that.
///
/// Default value: `u64::max_value()`
/// Default value: 1_0000_0000_000 msat (1 Bitcoin)
///
/// [`liquidity_penalty_multiplier_msat`]: Self::liquidity_penalty_multiplier_msat
/// [`amount_penalty_multiplier_msat`]: Self::amount_penalty_multiplier_msat
Expand Down Expand Up @@ -563,7 +563,7 @@ impl Default for ProbabilisticScoringParameters {
amount_penalty_multiplier_msat: 256,
manual_node_penalties: HashMap::new(),
anti_probing_penalty_msat: 250,
considered_impossible_penalty_msat: u64::max_value(),
considered_impossible_penalty_msat: 1_0000_0000_000,
}
}
}
Expand Down Expand Up @@ -2192,7 +2192,10 @@ mod tests {
fn accounts_for_inflight_htlc_usage() {
let logger = TestLogger::new();
let network_graph = network_graph(&logger);
let params = ProbabilisticScoringParameters::default();
let params = ProbabilisticScoringParameters {
considered_impossible_penalty_msat: u64::max_value(),
..ProbabilisticScoringParameters::zero_penalty()
};
let scorer = ProbabilisticScorer::new(params, &network_graph, &logger);
let source = source_node_id();
let target = target_node_id();
Expand Down

0 comments on commit a3547e2

Please sign in to comment.