Skip to content

Commit 3ce762f

Browse files
jmalicevicjmalicevic
andauthored
fix(store): Properly prune extended commits (#27)
* Deleted extended Commits from DB as well * Added tests * Moved extCommit deletion into check for evidence --------- Co-authored-by: jmalicevic <jasmina@informal.systems>
1 parent b8fa0cf commit 3ce762f

2 files changed

Lines changed: 9 additions & 0 deletions

File tree

store/store.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -423,10 +423,15 @@ func (bs *BlockStore) PruneBlocks(height int64, state sm.State) (uint64, int64,
423423
if err := batch.Delete(calcBlockCommitKey(h)); err != nil {
424424
return 0, -1, err
425425
}
426+
if err := batch.Delete(calcExtCommitKey(h)); err != nil {
427+
return 0, -1, err
428+
}
426429
}
427430
if err := batch.Delete(calcSeenCommitKey(h)); err != nil {
428431
return 0, -1, err
432+
429433
}
434+
430435
for p := 0; p < int(meta.BlockID.PartSetHeader.Total); p++ {
431436
if err := batch.Delete(calcBlockPartKey(h, p)); err != nil {
432437
return 0, -1, err

store/store_test.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -668,7 +668,9 @@ func TestPruningService(t *testing.T) {
668668
require.NotNil(t, bs.LoadBlockMeta(1100))
669669
require.Nil(t, bs.LoadBlockMeta(1099))
670670
require.NotNil(t, bs.LoadBlockCommit(1100))
671+
require.NotNil(t, bs.LoadBlockExtendedCommit(1100))
671672
require.Nil(t, bs.LoadBlockCommit(1099))
673+
require.Nil(t, bs.LoadBlockExtendedCommit(1099))
672674
for i := int64(1); i < 1200; i++ {
673675
require.Nil(t, bs.LoadBlock(i))
674676
}
@@ -706,7 +708,9 @@ func TestPruningService(t *testing.T) {
706708
require.NotNil(t, bs.LoadBlockMeta(1100))
707709
require.Nil(t, bs.LoadBlockMeta(1099))
708710
require.NotNil(t, bs.LoadBlockCommit(1100))
711+
require.NotNil(t, bs.LoadBlockExtendedCommit(1100))
709712
require.Nil(t, bs.LoadBlockCommit(1099))
713+
require.Nil(t, bs.LoadBlockExtendedCommit(1099))
710714
t.Log("Done pruning up until 1300")
711715
case <-time.After(5 * time.Second):
712716
require.Fail(t, "timed out waiting for pruning run to complete")

0 commit comments

Comments
 (0)