Skip to content

Commit 23282f9

Browse files
authored
Merge pull request #91 from buffrr/cbf-updates
Update order of cbf check
2 parents cb4d0f5 + 3a55106 commit 23282f9

File tree

1 file changed

+16
-8
lines changed

1 file changed

+16
-8
lines changed

client/src/cbf.rs

+16-8
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,22 @@ impl CompactFilterSync {
118118
match &self.state {
119119
SyncState::SyncChecks => {
120120
let info = source.get_blockchain_info()?;
121+
// if wallet already past prune height, we don't need filters
122+
if let Some(prune_height) = info.prune_height {
123+
if self.initial_tip.height >= prune_height {
124+
info!("wallet({}): tip {} >= prune height {}, cbf done", wallet.name(), self.initial_tip.height, prune_height);
125+
self.state = SyncState::Synced;
126+
return Ok(());
127+
}
128+
}
129+
// if wallet already past filter headers, we're done
130+
if let Some(filter_headers) = info.filter_headers {
131+
if self.initial_tip.height >= filter_headers {
132+
info!("wallet({}): tip {} >= filters {}, cbf done", wallet.name(), self.initial_tip.height, filter_headers);
133+
self.state = SyncState::Synced;
134+
return Ok(());
135+
}
136+
}
121137
if info.headers != info.blocks {
122138
info!("Source still syncing, retrying...");
123139
*progress = WalletProgressUpdate::Syncing;
@@ -138,14 +154,6 @@ impl CompactFilterSync {
138154
self.wait = Some(Instant::now());
139155
return Ok(());
140156
}
141-
// if wallet already past filter headers, we're done
142-
if let Some(filter_headers) = info.filter_headers {
143-
if self.initial_tip.height >= filter_headers {
144-
info!("wallet({}): tip {} >= filters {}, cbf done", wallet.name(), self.initial_tip.height, filter_headers);
145-
self.state = SyncState::Synced;
146-
return Ok(());
147-
}
148-
}
149157
self.state = SyncState::LoadFilterRange(info);
150158
}
151159
SyncState::LoadFilterRange(info) => {

0 commit comments

Comments
 (0)