wallet: remove wallet best height check when checkpointing intial sync
This check is not required since the wallet's best height is the genesis block.
This commit is contained in:
parent
426f523475
commit
2ff8e92e37
1 changed files with 11 additions and 31 deletions
|
@ -359,10 +359,20 @@ func (w *Wallet) syncWithChain(birthdayStamp *waddrmgr.BlockStamp) error {
|
|||
// arbitrary height, rather than all the blocks from genesis, so
|
||||
// we persist this height to ensure we don't store any blocks
|
||||
// before it.
|
||||
startHeight, _, err := w.getSyncRange(chainClient, birthdayStamp)
|
||||
_, bestHeight, err := chainClient.GetBestBlock()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
startHeight := bestHeight - waddrmgr.MaxReorgDepth + 1
|
||||
if startHeight < 0 {
|
||||
startHeight = 0
|
||||
}
|
||||
if birthdayStamp.Height < startHeight {
|
||||
startHeight = birthdayStamp.Height
|
||||
}
|
||||
|
||||
// With the starting height obtained, get the remaining block
|
||||
// details required by the wallet.
|
||||
startHash, err := chainClient.GetBlockHash(int64(startHeight))
|
||||
if err != nil {
|
||||
return err
|
||||
|
@ -724,36 +734,6 @@ func (w *Wallet) recovery(chainClient chain.Interface,
|
|||
return nil
|
||||
}
|
||||
|
||||
// getSyncRange determines the best height range to sync with the chain to
|
||||
// ensure we don't rescan blocks more than once.
|
||||
func (w *Wallet) getSyncRange(chainClient chain.Interface,
|
||||
birthdayBlock *waddrmgr.BlockStamp) (int32, int32, error) {
|
||||
|
||||
// The wallet requires to store up to MaxReorgDepth blocks, so we'll
|
||||
// start from there, unless our birthday is before it.
|
||||
_, bestHeight, err := chainClient.GetBestBlock()
|
||||
if err != nil {
|
||||
return 0, 0, err
|
||||
}
|
||||
startHeight := bestHeight - waddrmgr.MaxReorgDepth + 1
|
||||
if startHeight < 0 {
|
||||
startHeight = 0
|
||||
}
|
||||
if birthdayBlock.Height < startHeight {
|
||||
startHeight = birthdayBlock.Height
|
||||
}
|
||||
|
||||
// If the wallet's tip has surpassed our starting height, then we'll
|
||||
// start there as we don't need to rescan blocks we've already
|
||||
// processed.
|
||||
walletHeight := w.Manager.SyncedTo().Height
|
||||
if walletHeight > startHeight {
|
||||
startHeight = walletHeight
|
||||
}
|
||||
|
||||
return startHeight, bestHeight, nil
|
||||
}
|
||||
|
||||
// defaultScopeManagers fetches the ScopedKeyManagers from the wallet using the
|
||||
// default set of key scopes.
|
||||
func (w *Wallet) defaultScopeManagers() (
|
||||
|
|
Loading…
Reference in a new issue