Skip to content

Commit b97511a

Browse files
authored
chore: lint iavl (#651)
1 parent 7c04bc4 commit b97511a

18 files changed

+158
-87
lines changed

.golangci.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
run:
2-
tests: false
2+
tests: true
33
# timeout for analysis, e.g. 30s, 5m, default is 1m
44
timeout: 5m
55

basic_test.go

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ func TestBasic(t *testing.T) {
5555
t.Errorf("Unexpected value %s", val)
5656
}
5757

58-
val, err = tree.Get(key)
58+
val, _ = tree.Get(key)
5959
if val != nil {
6060
t.Error("Fast method - expected no value to exist")
6161
}
@@ -108,7 +108,7 @@ func TestBasic(t *testing.T) {
108108
t.Errorf("Unexpected value %s", val)
109109
}
110110

111-
val, err = tree.Get(key)
111+
val, _ = tree.Get(key)
112112
if val == nil {
113113
t.Error("Fast method - expected value to exist")
114114
}
@@ -134,7 +134,7 @@ func TestBasic(t *testing.T) {
134134
t.Errorf("Unexpected value %s", val)
135135
}
136136

137-
val, err = tree.Get(key)
137+
val, _ = tree.Get(key)
138138
if val != nil {
139139
t.Error("Fast method - expected no value to exist")
140140
}
@@ -160,7 +160,7 @@ func TestBasic(t *testing.T) {
160160
t.Errorf("Unexpected value %s", val)
161161
}
162162

163-
val, err = tree.Get(key)
163+
val, _ = tree.Get(key)
164164
if val != nil {
165165
t.Error("Fast method - expected no value to exist")
166166
}
@@ -341,7 +341,7 @@ func TestIntegration(t *testing.T) {
341341
}
342342

343343
for i, x := range records {
344-
if val, removed, err := tree.Remove([]byte(x.key)); err != nil {
344+
if val, removed, err := tree.Remove([]byte(x.key)); err != nil { //nolint:gocritic
345345
require.NoError(t, err)
346346
} else if !removed {
347347
t.Error("Wasn't removed")

benchmarks/bench_test.go

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,8 @@ func prepareTree(b *testing.B, db db.DB, size, keyLen, dataLen int) (*iavl.Mutab
3131

3232
for i := 0; i < size; i++ {
3333
key := randBytes(keyLen)
34-
t.Set(key, randBytes(dataLen))
34+
_, err = t.Set(key, randBytes(dataLen))
35+
require.NoError(b, err)
3536
keys[i] = key
3637
}
3738
commitTree(b, t)
@@ -41,7 +42,8 @@ func prepareTree(b *testing.B, db db.DB, size, keyLen, dataLen int) (*iavl.Mutab
4142

4243
// commit tree saves a new version and deletes old ones according to historySize
4344
func commitTree(b *testing.B, t *iavl.MutableTree) {
44-
t.Hash()
45+
_, err := t.Hash()
46+
require.NoError(b, err)
4547

4648
_, version, err := t.SaveVersion()
4749
if err != nil {
@@ -63,7 +65,8 @@ func runQueriesFast(b *testing.B, t *iavl.MutableTree, keyLen int) {
6365
require.True(b, isFastCacheEnabled)
6466
for i := 0; i < b.N; i++ {
6567
q := randBytes(keyLen)
66-
t.Get(q)
68+
_, err := t.Get(q)
69+
require.NoError(b, err)
6770
}
6871
}
6972

@@ -75,7 +78,8 @@ func runKnownQueriesFast(b *testing.B, t *iavl.MutableTree, keys [][]byte) {
7578
l := int32(len(keys))
7679
for i := 0; i < b.N; i++ {
7780
q := keys[rand.Int31n(l)]
78-
t.Get(q)
81+
_, err := t.Get(q)
82+
require.NoError(b, err)
7983
}
8084
}
8185

@@ -95,7 +99,8 @@ func runQueriesSlow(b *testing.B, t *iavl.MutableTree, keyLen int) {
9599
b.StartTimer()
96100
for i := 0; i < b.N; i++ {
97101
q := randBytes(keyLen)
98-
itree.GetWithIndex(q)
102+
_, _, err := itree.GetWithIndex(q)
103+
require.NoError(b, err)
99104
}
100105
}
101106

@@ -172,7 +177,8 @@ func runUpdate(b *testing.B, t *iavl.MutableTree, dataLen, blockSize int, keys [
172177
l := int32(len(keys))
173178
for i := 1; i <= b.N; i++ {
174179
key := keys[rand.Int31n(l)]
175-
t.Set(key, randBytes(dataLen))
180+
_, err := t.Set(key, randBytes(dataLen))
181+
require.NoError(b, err)
176182
if i%blockSize == 0 {
177183
commitTree(b, t)
178184
}
@@ -219,8 +225,10 @@ func runBlock(b *testing.B, t *iavl.MutableTree, keyLen, dataLen, blockSize int,
219225
// perform query and write on check and then real
220226
// check.GetFast(key)
221227
// check.Set(key, data)
222-
real.Get(key)
223-
real.Set(key, data)
228+
_, err := real.Get(key)
229+
require.NoError(b, err)
230+
_, err = real.Set(key, data)
231+
require.NoError(b, err)
224232
}
225233

226234
// at the end of a block, move it all along....

cache/cache_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -303,7 +303,7 @@ func randBytes(length int) []byte {
303303
key := make([]byte, length)
304304
// math.rand.Read always returns err=nil
305305
// we do not need cryptographic randomness for this test:
306-
//nolint:gosec
307-
rand.Read(key)
306+
307+
rand.Read(key) //nolint:errcheck
308308
return key
309309
}

export_test.go

Lines changed: 34 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -17,25 +17,38 @@ func setupExportTreeBasic(t require.TestingT) *ImmutableTree {
1717
tree, err := NewMutableTree(db.NewMemDB(), 0, false)
1818
require.NoError(t, err)
1919

20-
tree.Set([]byte("x"), []byte{255})
21-
tree.Set([]byte("z"), []byte{255})
22-
tree.Set([]byte("a"), []byte{1})
23-
tree.Set([]byte("b"), []byte{2})
24-
tree.Set([]byte("c"), []byte{3})
20+
_, err = tree.Set([]byte("x"), []byte{255})
21+
require.NoError(t, err)
22+
_, err = tree.Set([]byte("z"), []byte{255})
23+
require.NoError(t, err)
24+
_, err = tree.Set([]byte("a"), []byte{1})
25+
require.NoError(t, err)
26+
_, err = tree.Set([]byte("b"), []byte{2})
27+
require.NoError(t, err)
28+
_, err = tree.Set([]byte("c"), []byte{3})
29+
require.NoError(t, err)
2530
_, _, err = tree.SaveVersion()
2631
require.NoError(t, err)
2732

28-
tree.Remove([]byte("x"))
29-
tree.Remove([]byte("b"))
30-
tree.Set([]byte("c"), []byte{255})
31-
tree.Set([]byte("d"), []byte{4})
33+
_, _, err = tree.Remove([]byte("x"))
34+
require.NoError(t, err)
35+
_, _, err = tree.Remove([]byte("b"))
36+
require.NoError(t, err)
37+
_, err = tree.Set([]byte("c"), []byte{255})
38+
require.NoError(t, err)
39+
_, err = tree.Set([]byte("d"), []byte{4})
40+
require.NoError(t, err)
3241
_, _, err = tree.SaveVersion()
3342
require.NoError(t, err)
3443

35-
tree.Set([]byte("b"), []byte{2})
36-
tree.Set([]byte("c"), []byte{3})
37-
tree.Set([]byte("e"), []byte{5})
38-
tree.Remove([]byte("z"))
44+
_, err = tree.Set([]byte("b"), []byte{2})
45+
require.NoError(t, err)
46+
_, err = tree.Set([]byte("c"), []byte{3})
47+
require.NoError(t, err)
48+
_, err = tree.Set([]byte("e"), []byte{5})
49+
require.NoError(t, err)
50+
_, _, err = tree.Remove([]byte("z"))
51+
require.NoError(t, err)
3952
_, version, err := tree.SaveVersion()
4053
require.NoError(t, err)
4154

@@ -111,7 +124,7 @@ func setupExportTreeRandom(t *testing.T) *ImmutableTree {
111124

112125
// setupExportTreeSized sets up a single-version tree with a given number
113126
// of randomly generated key/value pairs, useful for benchmarking.
114-
func setupExportTreeSized(t require.TestingT, treeSize int) *ImmutableTree {
127+
func setupExportTreeSized(t require.TestingT, treeSize int) *ImmutableTree { //nolint:unparam
115128
const (
116129
randSeed = 49872768940 // For deterministic tests
117130
keySize = 16
@@ -221,7 +234,7 @@ func TestExporter_Import(t *testing.T) {
221234
require.Equal(t, tree.Size(), newTree.Size(), "Tree size mismatch")
222235
require.Equal(t, tree.Version(), newTree.Version(), "Tree version mismatch")
223236

224-
tree.Iterate(func(key, value []byte) bool {
237+
tree.Iterate(func(key, value []byte) bool { //nolint:errcheck
225238
index, _, err := tree.GetWithIndex(key)
226239
require.NoError(t, err)
227240
newIndex, newValue, err := newTree.GetWithIndex(key)
@@ -262,15 +275,18 @@ func TestExporter_DeleteVersionErrors(t *testing.T) {
262275
tree, err := NewMutableTree(db.NewMemDB(), 0, false)
263276
require.NoError(t, err)
264277

265-
tree.Set([]byte("a"), []byte{1})
278+
_, err = tree.Set([]byte("a"), []byte{1})
279+
require.NoError(t, err)
266280
_, _, err = tree.SaveVersion()
267281
require.NoError(t, err)
268282

269-
tree.Set([]byte("b"), []byte{2})
283+
_, err = tree.Set([]byte("b"), []byte{2})
284+
require.NoError(t, err)
270285
_, _, err = tree.SaveVersion()
271286
require.NoError(t, err)
272287

273-
tree.Set([]byte("c"), []byte{3})
288+
_, err = tree.Set([]byte("c"), []byte{3})
289+
require.NoError(t, err)
274290
_, _, err = tree.SaveVersion()
275291
require.NoError(t, err)
276292

immutable_tree.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -322,7 +322,7 @@ func (t *ImmutableTree) clone() *ImmutableTree {
322322

323323
// nodeSize is like Size, but includes inner nodes too.
324324
//
325-
//nolint:unused
325+
326326
func (t *ImmutableTree) nodeSize() int {
327327
size := 0
328328
t.root.traverse(t, true, func(n *Node) bool {

import_test.go

Lines changed: 22 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,19 @@ func ExampleImporter() {
1515
// handle err
1616
}
1717

18-
tree.Set([]byte("a"), []byte{1})
19-
tree.Set([]byte("b"), []byte{2})
20-
tree.Set([]byte("c"), []byte{3})
18+
_, err = tree.Set([]byte("a"), []byte{1})
19+
if err != nil {
20+
// handle err
21+
}
22+
23+
_, err = tree.Set([]byte("b"), []byte{2})
24+
if err != nil {
25+
// handle err
26+
}
27+
_, err = tree.Set([]byte("c"), []byte{3})
28+
if err != nil {
29+
// handle err
30+
}
2131
_, version, err := tree.SaveVersion()
2232
if err != nil {
2333
// handle err
@@ -28,6 +38,9 @@ func ExampleImporter() {
2838
// handle err
2939
}
3040
exporter, err := itree.Export()
41+
if err != nil {
42+
// handle err
43+
}
3144
defer exporter.Close()
3245
exported := []*ExportNode{}
3346
for {
@@ -72,7 +85,8 @@ func TestImporter_NegativeVersion(t *testing.T) {
7285
func TestImporter_NotEmpty(t *testing.T) {
7386
tree, err := NewMutableTree(db.NewMemDB(), 0, false)
7487
require.NoError(t, err)
75-
tree.Set([]byte("a"), []byte{1})
88+
_, err = tree.Set([]byte("a"), []byte{1})
89+
require.NoError(t, err)
7690
_, _, err = tree.SaveVersion()
7791
require.NoError(t, err)
7892

@@ -85,7 +99,8 @@ func TestImporter_NotEmptyDatabase(t *testing.T) {
8599

86100
tree, err := NewMutableTree(db, 0, false)
87101
require.NoError(t, err)
88-
tree.Set([]byte("a"), []byte{1})
102+
_, err = tree.Set([]byte("a"), []byte{1})
103+
require.NoError(t, err)
89104
_, _, err = tree.SaveVersion()
90105
require.NoError(t, err)
91106

@@ -101,7 +116,8 @@ func TestImporter_NotEmptyDatabase(t *testing.T) {
101116
func TestImporter_NotEmptyUnsaved(t *testing.T) {
102117
tree, err := NewMutableTree(db.NewMemDB(), 0, false)
103118
require.NoError(t, err)
104-
tree.Set([]byte("a"), []byte{1})
119+
_, err = tree.Set([]byte("a"), []byte{1})
120+
require.NoError(t, err)
105121

106122
_, err = tree.Import(1)
107123
require.Error(t, err)

internal/bytes/string_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ func (s *StringSuite) TestUnsafeStrToBytes() {
2626
b := unsafeConvertStr()
2727
runtime.GC()
2828
<-time.NewTimer(2 * time.Millisecond).C
29-
b2 := append(b, 'd')
29+
b2 := append(b, 'd') //nolint:gocritic
3030
s.Equal("abc", string(b))
3131
s.Equal("abcd", string(b2))
3232
}

mutable_tree.go

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -667,7 +667,7 @@ func (tree *MutableTree) IsUpgradeable() (bool, error) {
667667
// enableFastStorageAndCommitIfNotEnabled if nodeDB doesn't mark fast storage as enabled, enable it, and commit the update.
668668
// Checks whether the fast cache on disk matches latest live state. If not, deletes all existing fast nodes and repopulates them
669669
// from latest tree.
670-
// nolint: unparam
670+
671671
func (tree *MutableTree) enableFastStorageAndCommitIfNotEnabled() (bool, error) {
672672
isUpgradeable, err := tree.IsUpgradeable()
673673
if err != nil {
@@ -930,13 +930,12 @@ func (tree *MutableTree) saveFastNodeVersion() error {
930930
return tree.ndb.setFastStorageVersionToBatch()
931931
}
932932

933-
// nolint: unused
934933
func (tree *MutableTree) getUnsavedFastNodeAdditions() map[string]*fastnode.Node {
935934
return tree.unsavedFastNodeAdditions
936935
}
937936

938937
// getUnsavedFastNodeRemovals returns unsaved FastNodes to remove
939-
// nolint: unused
938+
940939
func (tree *MutableTree) getUnsavedFastNodeRemovals() map[string]interface{} {
941940
return tree.unsavedFastNodeRemovals
942941
}

0 commit comments

Comments
 (0)