diff --git a/x/stake/genesis.go b/x/stake/genesis.go index d45adc3d7..e8965dcf2 100644 --- a/x/stake/genesis.go +++ b/x/stake/genesis.go @@ -32,11 +32,15 @@ func InitGenesis(ctx sdk.Context, k Keeper, data GenesisState) { k.setPool(ctx, data.Pool) k.setNewParams(ctx, data.Params) for _, validator := range data.Validators { + // Staking assumes bonded validators are already stored, need to force update + validator.PoolShares.Status = sdk.Unbonded k.updateValidator(ctx, validator) } for _, bond := range data.Bonds { k.setDelegation(ctx, bond) } + store := ctx.KVStore(k.storeKey) + k.updateBondedValidatorsFull(ctx, store) } // WriteGenesis - output genesis parameters