|
1 | 1 | use std::cmp::max;
|
2 | 2 | use std::collections::HashMap;
|
| 3 | +use std::ops::Deref; |
3 | 4 |
|
4 | 5 | use bitcoin::BlockHash;
|
5 | 6 | use lightning::ln::msgs::{UnsignedChannelAnnouncement, UnsignedChannelUpdate};
|
| 7 | +use lightning::log_trace; |
| 8 | +use lightning::util::logger::Logger; |
6 | 9 | use lightning::util::ser::{BigSize, Writeable};
|
7 | 10 |
|
8 | 11 | use crate::config;
|
@@ -102,7 +105,7 @@ struct FullUpdateValueHistograms {
|
102 | 105 | htlc_maximum_msat: HashMap<u64, usize>,
|
103 | 106 | }
|
104 | 107 |
|
105 |
| -pub(super) fn serialize_delta_set(delta_set: DeltaSet, last_sync_timestamp: u32) -> SerializationSet { |
| 108 | +pub(super) fn serialize_delta_set<L: Deref>(delta_set: DeltaSet, last_sync_timestamp: u32, logger: L) -> SerializationSet where L::Target: Logger { |
106 | 109 | let chain_hash = bitcoin::blockdata::constants::genesis_block(config::network()).block_hash();
|
107 | 110 | let mut serialization_set = SerializationSet {
|
108 | 111 | announcements: vec![],
|
@@ -135,10 +138,14 @@ pub(super) fn serialize_delta_set(delta_set: DeltaSet, last_sync_timestamp: u32)
|
135 | 138 | let current_announcement_seen = channel_announcement_delta.seen;
|
136 | 139 | let is_new_announcement = current_announcement_seen >= last_sync_timestamp;
|
137 | 140 | let is_newly_included_announcement = if let Some(first_update_seen) = channel_delta.first_bidirectional_updates_seen {
|
| 141 | + #[cfg(test)] |
| 142 | + log_trace!(logger, "Channel {} first bidirectional update seen: {}", scid, first_update_seen); |
138 | 143 | first_update_seen >= last_sync_timestamp
|
139 | 144 | } else {
|
140 | 145 | false
|
141 | 146 | };
|
| 147 | + #[cfg(test)] |
| 148 | + log_trace!(logger, "Channel {} announcement seen at {} (new: {}, newly included: {})", scid, current_announcement_seen, is_new_announcement, is_newly_included_announcement); |
142 | 149 | let send_announcement = is_new_announcement || is_newly_included_announcement;
|
143 | 150 | if send_announcement {
|
144 | 151 | serialization_set.latest_seen = max(serialization_set.latest_seen, current_announcement_seen);
|
|
0 commit comments