Skip to content

Commit c8fdb14

Browse files
authored
fix(state-version): should be uint8 instead of uint32 (#3779)
1 parent f5e48a9 commit c8fdb14

File tree

7 files changed

+18
-18
lines changed

7 files changed

+18
-18
lines changed

cmd/gossamer/commands/import_state.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@ import (
1515
func init() {
1616
ImportStateCmd.Flags().String("chain", "", "Chain id used to load default configuration for specified chain")
1717
ImportStateCmd.Flags().String("state-file", "", "Path to JSON file consisting of key-value pairs")
18-
ImportStateCmd.Flags().Uint32("state-version",
19-
uint32(trie.DefaultStateVersion),
18+
ImportStateCmd.Flags().Uint8("state-version",
19+
uint8(trie.DefaultStateVersion),
2020
"State version to use when importing state",
2121
)
2222
ImportStateCmd.Flags().String("header-file", "", "Path to JSON file of block header corresponding to the given state")
@@ -60,7 +60,7 @@ func execImportState(cmd *cobra.Command) error {
6060
return fmt.Errorf("state-file must be specified")
6161
}
6262

63-
stateVersion, err := cmd.Flags().GetUint32("state-version")
63+
stateVersion, err := cmd.Flags().GetUint8("state-version")
6464
if err != nil {
6565
return fmt.Errorf("failed to get state-version: %s", err)
6666
}

dot/core/service_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,7 @@ func Test_Service_StorageRoot(t *testing.T) {
135135
retErr error
136136
expErr error
137137
expErrMsg string
138-
stateVersion uint32
138+
stateVersion uint8
139139
}{
140140
{
141141
name: "storage trie state error",

lib/runtime/version.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ type Version struct {
2828
ImplVersion uint32
2929
APIItems []APIItem
3030
TransactionVersion uint32
31-
StateVersion uint32
31+
StateVersion uint8
3232
}
3333

3434
var (

lib/runtime/version_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,7 @@ func Test_Version_Scale(t *testing.T) {
171171
encoding: []byte{
172172
0x4, 0x1, 0x4, 0x2, 0x3, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0,
173173
0x5, 0x0, 0x0, 0x0, 0x4, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7,
174-
0x8, 0x6, 0x0, 0x0, 0x0, 0x7, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0},
174+
0x8, 0x6, 0x0, 0x0, 0x0, 0x7, 0x0, 0x0, 0x0, 0x4},
175175
decoded: Version{
176176
SpecName: []byte{1},
177177
ImplName: []byte{2},

lib/runtime/wazero/imports.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -795,7 +795,7 @@ func ext_trie_blake2_256_root_version_2(ctx context.Context, m api.Module, dataS
795795
panic("nil runtime context")
796796
}
797797

798-
stateVersion, err := trie.ParseVersion(version)
798+
stateVersion, err := trie.ParseVersion(uint8(version))
799799
if err != nil {
800800
logger.Errorf("failed parsing state version: %s", err)
801801
return 0
@@ -841,7 +841,7 @@ func ext_trie_blake2_256_ordered_root_version_2(
841841

842842
data := read(m, dataSpan)
843843

844-
stateVersion, err := trie.ParseVersion(version)
844+
stateVersion, err := trie.ParseVersion(uint8(version))
845845
if err != nil {
846846
logger.Errorf("failed parsing state version: %s", err)
847847
return 0
@@ -923,7 +923,7 @@ func ext_trie_blake2_256_verify_proof_version_2(
923923
panic("nil runtime context")
924924
}
925925

926-
_, err := trie.ParseVersion(version)
926+
_, err := trie.ParseVersion(uint8(version))
927927
if err != nil {
928928
logger.Errorf("failed parsing state version: %s", err)
929929
return 0
@@ -1275,7 +1275,7 @@ func ext_default_child_storage_root_version_2(ctx context.Context, m api.Module,
12751275
return mustWrite(m, rtCtx.Allocator, emptyByteVectorEncoded)
12761276
}
12771277

1278-
stateVersion, err := trie.ParseVersion(version)
1278+
stateVersion, err := trie.ParseVersion(uint8(version))
12791279
if err != nil {
12801280
logger.Errorf("failed parsing state version: %s", err)
12811281
return 0

pkg/trie/layout.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -99,12 +99,12 @@ func (v TrieLayout) MustHash(t Trie) common.Hash {
9999
}
100100

101101
// ParseVersion parses a state trie version string.
102-
func ParseVersion[T string | uint32](v T) (version TrieLayout, err error) {
102+
func ParseVersion[T string | uint8](v T) (version TrieLayout, err error) {
103103
var s string
104104
switch value := any(v).(type) {
105105
case string:
106106
s = value
107-
case uint32:
107+
case uint8:
108108
s = fmt.Sprintf("V%d", value)
109109
}
110110

pkg/trie/layout_test.go

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ func Test_ParseVersion(t *testing.T) {
6464
version: V0,
6565
},
6666
"0": {
67-
v: uint32(0),
67+
v: uint8(0),
6868
version: V0,
6969
},
7070
"v1": {
@@ -76,18 +76,18 @@ func Test_ParseVersion(t *testing.T) {
7676
version: V1,
7777
},
7878
"1": {
79-
v: uint32(1),
79+
v: uint8(1),
8080
version: V1,
8181
},
8282
"invalid": {
8383
v: "xyz",
8484
errWrapped: ErrParseVersion,
8585
errMessage: "parsing version failed: \"xyz\" must be one of [v0, v1]",
8686
},
87-
"invalid_uint32": {
88-
v: uint32(999),
87+
"invalid_uint8": {
88+
v: uint8(99),
8989
errWrapped: ErrParseVersion,
90-
errMessage: "parsing version failed: \"V999\" must be one of [v0, v1]",
90+
errMessage: "parsing version failed: \"V99\" must be one of [v0, v1]",
9191
},
9292
}
9393

@@ -102,7 +102,7 @@ func Test_ParseVersion(t *testing.T) {
102102
switch typed := testCase.v.(type) {
103103
case string:
104104
version, err = ParseVersion(typed)
105-
case uint32:
105+
case uint8:
106106
version, err = ParseVersion(typed)
107107
default:
108108
t.Fail()

0 commit comments

Comments
 (0)