Skip to content

Commit 7e2ad9b

Browse files
committed
Fix wallet sync not finding coins of addresses which are not cached
Previously, electrum-based blockchain implementations only synced for `scriptPubKey`s that are already cached in `Database`. This PR introduces a feedback mechanism, that uses `stop_gap` and the difference between "current index" and "last active index" to determine whether we need to cache more `scriptPubKeys`. The `WalletSync::wallet_setup` trait now may return an `Error::MissingCachedScripts` error which contains the number of extra `scriptPubKey`s to cache, in order to satisfy `stop_gap` for the next call. `Wallet::sync` now calls `WalletSync` in a loop, cacheing inbetween subsequent calls (if needed).
1 parent 6bf7878 commit 7e2ad9b

File tree

1 file changed

+0
-1
lines changed

1 file changed

+0
-1
lines changed

src/blockchain/esplora/reqwest.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -213,7 +213,6 @@ impl WalletSync for EsploraBlockchain {
213213
};
214214

215215
database.commit_batch(batch_update)?;
216-
217216
Ok(())
218217
}
219218
}

0 commit comments

Comments
 (0)