From 1ff2e865a8ce845eed0e433a1bfe4c040947fc69 Mon Sep 17 00:00:00 2001 From: Christopher Goes Date: Fri, 12 Oct 2018 21:15:39 +0200 Subject: [PATCH] Back to greater than --- docs/spec/slashing/begin-block.md | 2 +- x/slashing/keeper.go | 2 +- x/slashing/keeper_test.go | 8 ++++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/spec/slashing/begin-block.md b/docs/spec/slashing/begin-block.md index 2d03fb6a7f..fb7d04e5dc 100644 --- a/docs/spec/slashing/begin-block.md +++ b/docs/spec/slashing/begin-block.md @@ -109,7 +109,7 @@ for val in block.Validators: // included in 50% of the recent LastCommits minHeight = signInfo.StartHeight + SIGNED_BLOCKS_WINDOW maxMissed = SIGNED_BLOCKS_WINDOW / 2 - if height >= minHeight AND signInfo.MissedBlocksCounter > maxMissed: + if height > minHeight AND signInfo.MissedBlocksCounter > maxMissed: signInfo.JailedUntil = block.Time + DOWNTIME_UNBOND_DURATION slash & unbond the validator diff --git a/x/slashing/keeper.go b/x/slashing/keeper.go index 1e0725ae8e..23e30fe1ec 100644 --- a/x/slashing/keeper.go +++ b/x/slashing/keeper.go @@ -128,7 +128,7 @@ func (k Keeper) handleValidatorSignature(ctx sdk.Context, addr crypto.Address, p } minHeight := signInfo.StartHeight + k.SignedBlocksWindow(ctx) maxMissed := k.SignedBlocksWindow(ctx) - k.MinSignedPerWindow(ctx) - if height >= minHeight && signInfo.MissedBlocksCounter > maxMissed { + if height > minHeight && signInfo.MissedBlocksCounter > maxMissed { validator := k.validatorSet.ValidatorByConsAddr(ctx, consAddr) if validator != nil && !validator.GetJailed() { // Downtime confirmed: slash and jail the validator diff --git a/x/slashing/keeper_test.go b/x/slashing/keeper_test.go index 6b53eaf8cf..2efc8dd847 100644 --- a/x/slashing/keeper_test.go +++ b/x/slashing/keeper_test.go @@ -421,8 +421,8 @@ func TestValidatorDippingInAndOut(t *testing.T) { validator, _ = sk.GetValidator(ctx, addr) require.Equal(t, sdk.Bonded, validator.Status) - // validator misses 500 blocks - for ; height < int64(1202); height++ { + // validator misses 501 blocks + for ; height < int64(1203); height++ { ctx = ctx.WithBlockHeight(height) keeper.handleValidatorSignature(ctx, val.Address(), newAmt, false) } @@ -433,7 +433,7 @@ func TestValidatorDippingInAndOut(t *testing.T) { require.Equal(t, sdk.Bonded, validator.Status) // validator signs 500 blocks - for ; height < int64(1701); height++ { + for ; height < int64(1702); height++ { ctx = ctx.WithBlockHeight(height) keeper.handleValidatorSignature(ctx, val.Address(), newAmt, true) } @@ -442,7 +442,7 @@ func TestValidatorDippingInAndOut(t *testing.T) { signingInfo, found := keeper.getValidatorSigningInfo(ctx, sdk.ConsAddress(val.Address())) require.True(t, found) require.Equal(t, int64(700), signingInfo.StartHeight) - require.Equal(t, int64(1101), signingInfo.IndexOffset) + require.Equal(t, int64(1102), signingInfo.IndexOffset) require.Equal(t, int64(501), signingInfo.MissedBlocksCounter) // should be jailed & kicked