From 4581ab342b07d232fe3a3ce6edab546686f9db25 Mon Sep 17 00:00:00 2001 From: Xuefeng Zhu Date: Thu, 29 Aug 2019 13:47:55 -0700 Subject: [PATCH] Merge PR #4966: Reuse ValidatorsPowerStoreIterator --- x/staking/keeper/validator.go | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/x/staking/keeper/validator.go b/x/staking/keeper/validator.go index a594238fc..0494acd2d 100644 --- a/x/staking/keeper/validator.go +++ b/x/staking/keeper/validator.go @@ -235,11 +235,10 @@ func (k Keeper) GetValidators(ctx sdk.Context, maxRetrieve uint16) (validators [ // get the current group of bonded validators sorted by power-rank func (k Keeper) GetBondedValidatorsByPower(ctx sdk.Context) []types.Validator { - store := ctx.KVStore(k.storeKey) maxValidators := k.MaxValidators(ctx) validators := make([]types.Validator, maxValidators) - iterator := sdk.KVStoreReversePrefixIterator(store, types.ValidatorsByPowerIndexKey) + iterator := k.ValidatorsPowerStoreIterator(ctx) defer iterator.Close() i := 0 @@ -256,10 +255,9 @@ func (k Keeper) GetBondedValidatorsByPower(ctx sdk.Context) []types.Validator { } // returns an iterator for the current validator power store -func (k Keeper) ValidatorsPowerStoreIterator(ctx sdk.Context) (iterator sdk.Iterator) { +func (k Keeper) ValidatorsPowerStoreIterator(ctx sdk.Context) sdk.Iterator { store := ctx.KVStore(k.storeKey) - iterator = sdk.KVStoreReversePrefixIterator(store, types.ValidatorsByPowerIndexKey) - return iterator + return sdk.KVStoreReversePrefixIterator(store, types.ValidatorsByPowerIndexKey) } //_______________________________________________________________________