Skip to content

Commit 65b9716

Browse files
committed
fix go vet issues in hamt sharding PR
License: MIT Signed-off-by: Jeromy <[email protected]>
1 parent c4c6653 commit 65b9716

File tree

11 files changed

+50
-40
lines changed

11 files changed

+50
-40
lines changed

core/commands/files/files.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -348,7 +348,7 @@ Examples:
348348
case *mfs.Directory:
349349
if !long {
350350
var output []mfs.NodeListing
351-
names, err := fsn.ListNames()
351+
names, err := fsn.ListNames(req.Context())
352352
if err != nil {
353353
res.SetError(err, cmds.ErrNormal)
354354
return
@@ -361,7 +361,7 @@ Examples:
361361
}
362362
res.SetOutput(&FilesLsOutput{output})
363363
} else {
364-
listing, err := fsn.List()
364+
listing, err := fsn.List(req.Context())
365365
if err != nil {
366366
res.SetError(err, cmds.ErrNormal)
367367
return

core/commands/ls.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ The JSON output contains type information.
111111
return
112112
}
113113

114-
links, err := dir.Links()
114+
links, err := dir.Links(req.Context())
115115
if err != nil {
116116
res.SetError(err, cmds.ErrNormal)
117117
return

core/coreunix/add.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -197,7 +197,7 @@ func (adder *Adder) Finalize() (node.Node, error) {
197197

198198
var name string
199199
if !adder.Wrap {
200-
children, err := root.(*mfs.Directory).ListNames()
200+
children, err := root.(*mfs.Directory).ListNames(adder.ctx)
201201
if err != nil {
202202
return nil, err
203203
}
@@ -232,7 +232,7 @@ func (adder *Adder) outputDirs(path string, fsn mfs.FSNode) error {
232232
case *mfs.File:
233233
return nil
234234
case *mfs.Directory:
235-
names, err := fsn.ListNames()
235+
names, err := fsn.ListNames(adder.ctx)
236236
if err != nil {
237237
return err
238238
}

fuse/ipns/ipns_unix.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -324,7 +324,7 @@ func (s *Directory) Lookup(ctx context.Context, name string) (fs.Node, error) {
324324
// ReadDirAll reads the link structure as directory entries
325325
func (dir *Directory) ReadDirAll(ctx context.Context) ([]fuse.Dirent, error) {
326326
var entries []fuse.Dirent
327-
listing, err := dir.dir.List()
327+
listing, err := dir.dir.List(ctx)
328328
if err != nil {
329329
return nil, err
330330
}

mfs/dir.go

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -217,12 +217,12 @@ type NodeListing struct {
217217
Hash string
218218
}
219219

220-
func (d *Directory) ListNames() ([]string, error) {
220+
func (d *Directory) ListNames(ctx context.Context) ([]string, error) {
221221
d.lock.Lock()
222222
defer d.lock.Unlock()
223223

224224
var out []string
225-
err := d.dirbuilder.ForEachLink(func(l *node.Link) error {
225+
err := d.dirbuilder.ForEachLink(ctx, func(l *node.Link) error {
226226
out = append(out, l.Name)
227227
return nil
228228
})
@@ -235,9 +235,9 @@ func (d *Directory) ListNames() ([]string, error) {
235235
return out, nil
236236
}
237237

238-
func (d *Directory) List() ([]NodeListing, error) {
238+
func (d *Directory) List(ctx context.Context) ([]NodeListing, error) {
239239
var out []NodeListing
240-
err := d.ForEachEntry(context.TODO(), func(nl NodeListing) error {
240+
err := d.ForEachEntry(ctx, func(nl NodeListing) error {
241241
out = append(out, nl)
242242
return nil
243243
})
@@ -247,7 +247,7 @@ func (d *Directory) List() ([]NodeListing, error) {
247247
func (d *Directory) ForEachEntry(ctx context.Context, f func(NodeListing) error) error {
248248
d.lock.Lock()
249249
defer d.lock.Unlock()
250-
return d.dirbuilder.ForEachLink(func(l *node.Link) error {
250+
return d.dirbuilder.ForEachLink(ctx, func(l *node.Link) error {
251251
c, err := d.childUnsync(l.Name)
252252
if err != nil {
253253
return err

mfs/mfs_test.go

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,9 @@ func mkdirP(t *testing.T, root *Directory, pth string) *Directory {
8282
}
8383

8484
func assertDirAtPath(root *Directory, pth string, children []string) error {
85+
ctx, cancel := context.WithCancel(context.Background())
86+
defer cancel()
87+
8588
fsn, err := DirLookup(root, pth)
8689
if err != nil {
8790
return err
@@ -92,7 +95,7 @@ func assertDirAtPath(root *Directory, pth string, children []string) error {
9295
return fmt.Errorf("%s was not a directory", pth)
9396
}
9497

95-
listing, err := dir.List()
98+
listing, err := dir.List(ctx)
9699
if err != nil {
97100
return err
98101
}
@@ -496,7 +499,7 @@ func TestMfsFile(t *testing.T) {
496499

497500
func randomWalk(d *Directory, n int) (*Directory, error) {
498501
for i := 0; i < n; i++ {
499-
dirents, err := d.List()
502+
dirents, err := d.List(context.Background())
500503
if err != nil {
501504
return nil, err
502505
}
@@ -585,7 +588,7 @@ func actorRemoveFile(d *Directory) error {
585588
return err
586589
}
587590

588-
ents, err := d.List()
591+
ents, err := d.List(context.Background())
589592
if err != nil {
590593
return err
591594
}
@@ -605,7 +608,7 @@ func randomFile(d *Directory) (*File, error) {
605608
return nil, err
606609
}
607610

608-
ents, err := d.List()
611+
ents, err := d.List(context.Background())
609612
if err != nil {
610613
return nil, err
611614
}
@@ -953,6 +956,7 @@ func TestConcurrentReads(t *testing.T) {
953956
}
954957
wg.Wait()
955958
}
959+
956960
func writeFile(rt *Root, path string, data []byte) error {
957961
n, err := Lookup(rt, path)
958962
if err != nil {
@@ -975,8 +979,8 @@ func writeFile(rt *Root, path string, data []byte) error {
975979
return err
976980
}
977981

978-
if nw != 10 {
979-
fmt.Errorf("wrote incorrect amount")
982+
if nw != len(data) {
983+
return fmt.Errorf("wrote incorrect amount: %d != 10", nw)
980984
}
981985

982986
return nil

unixfs/hamt/hamt.go

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -351,17 +351,17 @@ func (ds *HamtShard) getValue(ctx context.Context, hv *hashBits, key string, cb
351351
return os.ErrNotExist
352352
}
353353

354-
func (ds *HamtShard) EnumLinks() ([]*node.Link, error) {
354+
func (ds *HamtShard) EnumLinks(ctx context.Context) ([]*node.Link, error) {
355355
var links []*node.Link
356-
err := ds.ForEachLink(func(l *node.Link) error {
356+
err := ds.ForEachLink(ctx, func(l *node.Link) error {
357357
links = append(links, l)
358358
return nil
359359
})
360360
return links, err
361361
}
362362

363-
func (ds *HamtShard) ForEachLink(f func(*node.Link) error) error {
364-
return ds.walkTrie(func(sv *shardValue) error {
363+
func (ds *HamtShard) ForEachLink(ctx context.Context, f func(*node.Link) error) error {
364+
return ds.walkTrie(ctx, func(sv *shardValue) error {
365365
lnk, err := node.MakeLink(sv.val)
366366
if err != nil {
367367
return err
@@ -373,7 +373,7 @@ func (ds *HamtShard) ForEachLink(f func(*node.Link) error) error {
373373
})
374374
}
375375

376-
func (ds *HamtShard) walkTrie(cb func(*shardValue) error) error {
376+
func (ds *HamtShard) walkTrie(ctx context.Context, cb func(*shardValue) error) error {
377377
for i := 0; i < ds.tableSize; i++ {
378378
if ds.bitfield.Bit(i) == 0 {
379379
continue
@@ -382,7 +382,7 @@ func (ds *HamtShard) walkTrie(cb func(*shardValue) error) error {
382382
idx := ds.indexForBitPos(i)
383383
// NOTE: an optimized version could simply iterate over each
384384
// element in the 'children' array.
385-
c, err := ds.getChild(context.TODO(), idx)
385+
c, err := ds.getChild(ctx, idx)
386386
if err != nil {
387387
return err
388388
}
@@ -395,7 +395,7 @@ func (ds *HamtShard) walkTrie(cb func(*shardValue) error) error {
395395
}
396396

397397
case *HamtShard:
398-
err := c.walkTrie(cb)
398+
err := c.walkTrie(ctx, cb)
399399
if err != nil {
400400
return err
401401
}

unixfs/hamt/hamt_test.go

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,8 @@ func assertLink(s *HamtShard, name string, found bool) error {
7272
}
7373

7474
func assertSerializationWorks(ds dag.DAGService, s *HamtShard) error {
75+
ctx, cancel := context.WithCancel(context.Background())
76+
defer cancel()
7577
nd, err := s.Node()
7678
if err != nil {
7779
return err
@@ -82,12 +84,12 @@ func assertSerializationWorks(ds dag.DAGService, s *HamtShard) error {
8284
return err
8385
}
8486

85-
linksA, err := s.EnumLinks()
87+
linksA, err := s.EnumLinks(ctx)
8688
if err != nil {
8789
return err
8890
}
8991

90-
linksB, err := nds.EnumLinks()
92+
linksB, err := nds.EnumLinks(ctx)
9193
if err != nil {
9294
return err
9395
}
@@ -160,7 +162,8 @@ func TestDirBuilding(t *testing.T) {
160162
func TestShardReload(t *testing.T) {
161163
ds := mdtest.Mock()
162164
s, _ := NewHamtShard(ds, 256)
163-
ctx := context.Background()
165+
ctx, cancel := context.WithCancel(context.Background())
166+
defer cancel()
164167

165168
_, s, err := makeDir(ds, 200)
166169
if err != nil {
@@ -177,7 +180,7 @@ func TestShardReload(t *testing.T) {
177180
t.Fatal(err)
178181
}
179182

180-
lnks, err := nds.EnumLinks()
183+
lnks, err := nds.EnumLinks(ctx)
181184
if err != nil {
182185
t.Fatal(err)
183186
}
@@ -270,7 +273,7 @@ func TestSetAfterMarshal(t *testing.T) {
270273
}
271274
}
272275

273-
links, err := nds.EnumLinks()
276+
links, err := nds.EnumLinks(ctx)
274277
if err != nil {
275278
t.Fatal(err)
276279
}
@@ -301,7 +304,7 @@ func TestDuplicateAddShard(t *testing.T) {
301304
t.Fatal(err)
302305
}
303306

304-
lnks, err := dir.EnumLinks()
307+
lnks, err := dir.EnumLinks(ctx)
305308
if err != nil {
306309
t.Fatal(err)
307310
}
@@ -393,7 +396,7 @@ func TestRemoveElemsAfterMarshal(t *testing.T) {
393396
}
394397
}
395398

396-
links, err := nds.EnumLinks()
399+
links, err := nds.EnumLinks(ctx)
397400
if err != nil {
398401
t.Fatal(err)
399402
}

unixfs/io/dagreader_test.go

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -169,7 +169,10 @@ func TestMetadataNode(t *testing.T) {
169169
ctx, closer := context.WithCancel(context.Background())
170170
defer closer()
171171

172-
data, err := unixfs.BytesForMetadata(&unixfs.Metadata{"text", 125})
172+
data, err := unixfs.BytesForMetadata(&unixfs.Metadata{
173+
MimeType: "text",
174+
Size: 125,
175+
})
173176
if err != nil {
174177
t.Fatal(err)
175178
}

unixfs/io/dirbuilder.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,7 @@ func (d *Directory) switchToSharding(ctx context.Context) error {
119119
return nil
120120
}
121121

122-
func (d *Directory) ForEachLink(f func(*node.Link) error) error {
122+
func (d *Directory) ForEachLink(ctx context.Context, f func(*node.Link) error) error {
123123
if d.shard == nil {
124124
for _, l := range d.dirnode.Links() {
125125
if err := f(l); err != nil {
@@ -129,15 +129,15 @@ func (d *Directory) ForEachLink(f func(*node.Link) error) error {
129129
return nil
130130
}
131131

132-
return d.shard.ForEachLink(f)
132+
return d.shard.ForEachLink(ctx, f)
133133
}
134134

135-
func (d *Directory) Links() ([]*node.Link, error) {
135+
func (d *Directory) Links(ctx context.Context) ([]*node.Link, error) {
136136
if d.shard == nil {
137137
return d.dirnode.Links(), nil
138138
}
139139

140-
return d.shard.EnumLinks()
140+
return d.shard.EnumLinks(ctx)
141141
}
142142

143143
func (d *Directory) Find(ctx context.Context, name string) (node.Node, error) {

unixfs/io/dirbuilder_test.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ func TestDirectoryGrowth(t *testing.T) {
3838
t.Fatal(err)
3939
}
4040

41-
links, err := dir.Links()
41+
links, err := dir.Links(ctx)
4242
if err != nil {
4343
t.Fatal(err)
4444
}
@@ -86,7 +86,7 @@ func TestDuplicateAddDir(t *testing.T) {
8686
t.Fatal(err)
8787
}
8888

89-
lnks, err := dir.Links()
89+
lnks, err := dir.Links(ctx)
9090
if err != nil {
9191
t.Fatal(err)
9292
}
@@ -121,7 +121,7 @@ func TestDirBuilder(t *testing.T) {
121121
t.Fatal(err)
122122
}
123123

124-
links, err := dir.Links()
124+
links, err := dir.Links(ctx)
125125
if err != nil {
126126
t.Fatal(err)
127127
}
@@ -135,7 +135,7 @@ func TestDirBuilder(t *testing.T) {
135135
t.Fatal(err)
136136
}
137137

138-
links, err = adir.Links()
138+
links, err = adir.Links(ctx)
139139
if err != nil {
140140
t.Fatal(err)
141141
}

0 commit comments

Comments
 (0)