@@ -423,7 +423,7 @@ impl<'a> CandidateRouteHop<'a> {
423
423
/// so that we can choose cheaper paths (as per Dijkstra's algorithm).
424
424
/// Fee values should be updated only in the context of the whole path, see update_value_and_recompute_fees.
425
425
/// These fee values are useful to choose hops as we traverse the graph "payee-to-payer".
426
- #[ derive( Clone , Debug ) ]
426
+ #[ derive( Clone ) ]
427
427
struct PathBuildingHop < ' a > {
428
428
// Note that this should be dropped in favor of loading it from CandidateRouteHop, but doing so
429
429
// is a larger refactor and will require careful performance analysis.
@@ -463,6 +463,22 @@ struct PathBuildingHop<'a> {
463
463
value_contribution_msat : u64 ,
464
464
}
465
465
466
+ impl < ' a > core:: fmt:: Debug for PathBuildingHop < ' a > {
467
+ fn fmt ( & self , f : & mut core:: fmt:: Formatter ) -> Result < ( ) , core:: fmt:: Error > {
468
+ f. debug_struct ( "PathBuildingHop" )
469
+ . field ( "node_id" , & self . node_id )
470
+ . field ( "short_channel_id" , & self . candidate . short_channel_id ( ) )
471
+ . field ( "total_fee_msat" , & self . total_fee_msat )
472
+ . field ( "next_hops_fee_msat" , & self . next_hops_fee_msat )
473
+ . field ( "hop_use_fee_msat" , & self . hop_use_fee_msat )
474
+ . field ( "total_fee_msat - (next_hops_fee_msat + hop_use_fee_msat)" , & ( & self . total_fee_msat - ( & self . next_hops_fee_msat + & self . hop_use_fee_msat ) ) )
475
+ . field ( "path_penalty_msat" , & self . path_penalty_msat )
476
+ . field ( "path_htlc_minimum_msat" , & self . path_htlc_minimum_msat )
477
+ . field ( "cltv_expiry_delta" , & self . candidate . cltv_expiry_delta ( ) )
478
+ . finish ( )
479
+ }
480
+ }
481
+
466
482
// Instantiated with a list of hops with correct data in them collected during path finding,
467
483
// an instance of this struct should be further modified only via given methods.
468
484
#[ derive( Clone ) ]
@@ -1300,8 +1316,8 @@ where L::Target: Logger {
1300
1316
ordered_hops. last_mut ( ) . unwrap ( ) . 0 . fee_msat = value_contribution_msat;
1301
1317
ordered_hops. last_mut ( ) . unwrap ( ) . 0 . hop_use_fee_msat = 0 ;
1302
1318
1303
- log_trace ! ( logger, "Found a path back to us from the target with {} hops contributing up to {} msat: {: ?}" ,
1304
- ordered_hops. len( ) , value_contribution_msat, ordered_hops) ;
1319
+ log_trace ! ( logger, "Found a path back to us from the target with {} hops contributing up to {} msat: \n {:# ?}" ,
1320
+ ordered_hops. len( ) , value_contribution_msat, ordered_hops. iter ( ) . map ( |h| & ( h . 0 ) ) . collect :: < Vec < & PathBuildingHop >> ( ) ) ;
1305
1321
1306
1322
let mut payment_path = PaymentPath { hops : ordered_hops} ;
1307
1323
0 commit comments