state: propogate error from state store (#8171)

* state: propogate error from state store

* fix lint
This commit is contained in:
Sam Kleinman
2022-03-21 11:28:42 -04:00
committed by GitHub
parent c680cca96e
commit c33be0a410
2 changed files with 8 additions and 2 deletions

View File

@@ -39,6 +39,7 @@ type (
ErrNoValSetForHeight struct {
Height int64
Err error
}
ErrNoConsensusParamsForHeight struct {
@@ -89,9 +90,14 @@ func (e ErrStateMismatch) Error() string {
}
func (e ErrNoValSetForHeight) Error() string {
return fmt.Sprintf("could not find validator set for height #%d", e.Height)
if e.Err == nil {
return fmt.Sprintf("could not find validator set for height #%d", e.Height)
}
return fmt.Sprintf("could not find validator set for height #%d: %s", e.Height, e.Err.Error())
}
func (e ErrNoValSetForHeight) Unwrap() error { return e.Err }
func (e ErrNoConsensusParamsForHeight) Error() string {
return fmt.Sprintf("could not find consensus params for height #%d", e.Height)
}

View File

@@ -488,7 +488,7 @@ func (store dbStore) LoadValidators(height int64) (*types.ValidatorSet, error) {
valInfo, err := loadValidatorsInfo(store.db, height)
if err != nil {
return nil, ErrNoValSetForHeight{height}
return nil, ErrNoValSetForHeight{Height: height, Err: err}
}
if valInfo.ValidatorSet == nil {
lastStoredHeight := lastStoredHeightFor(height, valInfo.LastHeightChanged)