Skip to content

Commit

Permalink
Merge pull request #19 from vulcanize/ian/10194_state_sync_v2_store
Browse files Browse the repository at this point in the history
Ian/10194 state sync v2 store
  • Loading branch information
gsk967 authored Mar 3, 2022
2 parents beb757c + f47ace3 commit f5478fd
Show file tree
Hide file tree
Showing 5 changed files with 27 additions and 24 deletions.
22 changes: 11 additions & 11 deletions baseapp/baseapp_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -1917,8 +1917,8 @@ func TestListSnapshots(t *testing.T) {
s.Metadata = nil
}
assert.Equal(t, abci.ResponseListSnapshots{Snapshots: []*abci.Snapshot{
{Height: 4, Format: 1, Chunks: 2},
{Height: 2, Format: 1, Chunks: 1},
{Height: 4, Format: snapshottypes.CurrentFormat, Chunks: 2},
{Height: 2, Format: snapshottypes.CurrentFormat, Chunks: 1},
}}, resp)
}

Expand All @@ -1932,13 +1932,13 @@ func TestLoadSnapshotChunk(t *testing.T) {
chunk uint32
expectEmpty bool
}{
"Existing snapshot": {2, 1, 1, false},
"Missing height": {100, 1, 1, true},
"Missing format": {2, 2, 1, true},
"Missing chunk": {2, 1, 9, true},
"Zero height": {0, 1, 1, true},
"Existing snapshot": {2, snapshottypes.CurrentFormat, 1, false},
"Missing height": {100, snapshottypes.CurrentFormat, 1, true},
"Missing format": {2, 3, 1, true},
"Missing chunk": {2, snapshottypes.CurrentFormat, 9, true},
"Zero height": {0, snapshottypes.CurrentFormat, 1, true},
"Zero format": {2, 0, 1, true},
"Zero chunk": {2, 1, 0, false},
"Zero chunk": {2, snapshottypes.CurrentFormat, 0, false},
}
for name, tc := range testcases {
tc := tc
Expand Down Expand Up @@ -1976,13 +1976,13 @@ func TestOfferSnapshot_Errors(t *testing.T) {
Height: 1, Format: 9, Chunks: 3, Hash: hash, Metadata: metadata,
}, abci.ResponseOfferSnapshot_REJECT_FORMAT},
"incorrect chunk count": {&abci.Snapshot{
Height: 1, Format: 1, Chunks: 2, Hash: hash, Metadata: metadata,
Height: 1, Format: snapshottypes.CurrentFormat, Chunks: 2, Hash: hash, Metadata: metadata,
}, abci.ResponseOfferSnapshot_REJECT},
"no chunks": {&abci.Snapshot{
Height: 1, Format: 1, Chunks: 0, Hash: hash, Metadata: metadata,
Height: 1, Format: snapshottypes.CurrentFormat, Chunks: 0, Hash: hash, Metadata: metadata,
}, abci.ResponseOfferSnapshot_REJECT},
"invalid metadata serialization": {&abci.Snapshot{
Height: 1, Format: 1, Chunks: 0, Hash: hash, Metadata: []byte{3, 1, 4},
Height: 1, Format: snapshottypes.CurrentFormat, Chunks: 0, Hash: hash, Metadata: []byte{3, 1, 4},
}, abci.ResponseOfferSnapshot_REJECT},
}
for name, tc := range testcases {
Expand Down
4 changes: 2 additions & 2 deletions snapshots/helpers_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -136,10 +136,10 @@ func (m *mockSnapshotter) Snapshot(height uint64, protoWriter protoio.Writer) er
}

func (m *mockSnapshotter) SnapshotFormat() uint32 {
return 1
return snapshottypes.CurrentFormat
}
func (m *mockSnapshotter) SupportedFormats() []uint32 {
return []uint32{1}
return []uint32{snapshottypes.CurrentFormat}
}

// setupBusyManager creates a manager with an empty store that is busy creating a snapshot at height 1.
Expand Down
10 changes: 5 additions & 5 deletions snapshots/manager_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -139,13 +139,13 @@ func TestManager_Restore(t *testing.T) {
require.ErrorIs(t, err, types.ErrUnknownFormat)

// Restore errors on no chunks
err = manager.Restore(types.Snapshot{Height: 3, Format: 1, Hash: []byte{1, 2, 3}})
err = manager.Restore(types.Snapshot{Height: 3, Format: types.CurrentFormat, Hash: []byte{1, 2, 3}})
require.Error(t, err)

// Restore errors on chunk and chunkhashes mismatch
err = manager.Restore(types.Snapshot{
Height: 3,
Format: 1,
Format: types.CurrentFormat,
Hash: []byte{1, 2, 3},
Chunks: 4,
Metadata: types.Metadata{ChunkHashes: checksums(chunks)},
Expand All @@ -155,7 +155,7 @@ func TestManager_Restore(t *testing.T) {
// Starting a restore works
err = manager.Restore(types.Snapshot{
Height: 3,
Format: 1,
Format: types.CurrentFormat,
Hash: []byte{1, 2, 3},
Chunks: 1,
Metadata: types.Metadata{ChunkHashes: checksums(chunks)},
Expand Down Expand Up @@ -190,7 +190,7 @@ func TestManager_Restore(t *testing.T) {
// Starting a new restore should fail now, because the target already has contents.
err = manager.Restore(types.Snapshot{
Height: 3,
Format: 1,
Format: types.CurrentFormat,
Hash: []byte{1, 2, 3},
Chunks: 3,
Metadata: types.Metadata{ChunkHashes: checksums(chunks)},
Expand All @@ -203,7 +203,7 @@ func TestManager_Restore(t *testing.T) {
target.items = nil
err = manager.Restore(types.Snapshot{
Height: 3,
Format: 1,
Format: types.CurrentFormat,
Hash: []byte{1, 2, 3},
Chunks: 1,
Metadata: types.Metadata{ChunkHashes: checksums(chunks)},
Expand Down
8 changes: 5 additions & 3 deletions store/v2/multi/snapshot.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,16 @@ package multi
import (
"bytes"
"fmt"
"io"
"sort"

protoio "github.com/gogo/protobuf/io"

"github.com/cosmos/cosmos-sdk/snapshots"
snapshottypes "github.com/cosmos/cosmos-sdk/snapshots/types"
storetypes "github.com/cosmos/cosmos-sdk/store/types"
types "github.com/cosmos/cosmos-sdk/store/v2"
sdkerrors "github.com/cosmos/cosmos-sdk/types/errors"
protoio "github.com/gogo/protobuf/io"
"io"
"sort"
)

// Snapshot implements snapshottypes.Snapshotter.
Expand Down
7 changes: 4 additions & 3 deletions store/v2/multi/snapshot_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,19 +6,20 @@ import (
"encoding/hex"
"errors"
"fmt"
"github.com/cosmos/cosmos-sdk/snapshots"
"io"
"math/rand"
"sort"
"strings"
"testing"

"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"

dbm "github.com/cosmos/cosmos-sdk/db"
"github.com/cosmos/cosmos-sdk/db/memdb"
"github.com/cosmos/cosmos-sdk/snapshots"
snapshottypes "github.com/cosmos/cosmos-sdk/snapshots/types"
"github.com/cosmos/cosmos-sdk/store/types"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)

func multiStoreConfig(t *testing.T, stores int) StoreConfig {
Expand Down

0 comments on commit f5478fd

Please sign in to comment.