fix: update for merkledag API changes
Steven Allen committed
Jul 25, 2019 at 19:26 UTC
2c222741d1454df609d147ce417f16029f97d95d
6 files changed
+10
-16
core/commands/dht.go
+1
-1
@@ -326,7 +326,7 @@ func provideKeysRec(ctx context.Context, r routing.Routing, dserv ipld.DAGServic
326
for _, c := range cids {
327
kset := cid.NewSet()
328
329
- err := dag.WalkParallel(ctx, dag.GetLinksDirect(dserv), c, kset.Visit)
329
+ err := dag.Walk(ctx, dag.GetLinksDirect(dserv), c, kset.Visit)
330
if err != nil {
331
return err
332
}
core/commands/pin.go
+2
-6
@@ -503,11 +503,7 @@ func pinLsAll(req *cmds.Request, typeStr string, n *core.IpfsNode, emit func(val
503
if typeStr == "indirect" || typeStr == "all" {
504
for _, k := range n.Pinning.RecursiveKeys() {
505
var visitErr error
506
- err := dag.WalkParallelDepth(req.Context, dag.GetLinksWithDAG(n.DAG), k, 0, func(c cid.Cid, depth int) bool {
507
- if depth == 0 {
508
- // skip it without visiting it.
509
- return true
510
- }
506
+ err := dag.Walk(req.Context, dag.GetLinksWithDAG(n.DAG), k, func(c cid.Cid) bool {
507
r := keys.Visit(c)
508
if r {
509
err := emit(&PinLsOutputWrapper{
@@ -521,7 +517,7 @@ func pinLsAll(req *cmds.Request, typeStr string, n *core.IpfsNode, emit func(val
517
}
518
}
519
return r
524
- })
520
+ }, dag.SkipRoot(), dag.Concurrent())
521
522
if visitErr != nil {
523
return visitErr
core/coreapi/dht.go
+1
-1
@@ -114,7 +114,7 @@ func provideKeysRec(ctx context.Context, r routing.Routing, bs blockstore.Blocks
114
go func() {
115
dserv := dag.NewDAGService(blockservice.New(bs, offline.Exchange(bs)))
116
for _, c := range cids {
117
- err := dag.WalkParallel(ctx, dag.GetLinksDirect(dserv), c, provided.Visitor(ctx))
117
+ err := dag.Walk(ctx, dag.GetLinksDirect(dserv), c, provided.Visitor(ctx))
118
if err != nil {
119
errCh <- err
120
}
core/coreapi/pin.go
+4
-6
@@ -209,12 +209,10 @@ func (api *PinAPI) pinLsAll(typeStr string, ctx context.Context) ([]coreiface.Pi
209
if typeStr == "indirect" || typeStr == "all" {
210
set := cid.NewSet()
211
for _, k := range api.pinning.RecursiveKeys() {
212
- err := merkledag.WalkParallelDepth(
213
- ctx, merkledag.GetLinksWithDAG(api.dag), k, 0,
214
- func(c cid.Cid, depth int) bool {
215
- // don't visit the root node, that doesn't count.
216
- return depth == 0 || set.Visit(c)
217
- },
212
+ err := merkledag.Walk(
213
+ ctx, merkledag.GetLinksWithDAG(api.dag), k,
214
+ set.Visit,
215
+ merkledag.SkipRoot(), merkledag.Concurrent(),
216
)
217
if err != nil {
218
return nil, err
dagutils/diffenum.go
+1
-1
@@ -40,7 +40,7 @@ func DiffEnumerate(ctx context.Context, dserv ipld.NodeGetter, from, to cid.Cid)
40
if sset.Has(c.aft) {
41
continue
42
}
43
- err := mdag.WalkParallel(ctx, mdag.GetLinksDirect(dserv), c.aft, sset.Visit)
43
+ err := mdag.Walk(ctx, mdag.GetLinksDirect(dserv), c.aft, sset.Visit, mdag.Concurrent())
44
if err != nil {
45
return err
46
}
pin/gc/gc.go
+1
-1
@@ -171,7 +171,7 @@ func Descendants(ctx context.Context, getLinks dag.GetLinks, set *cid.Set, roots
171
172
for _, c := range roots {
173
// Walk recursively walks the dag and adds the keys to the given set
174
- err := dag.WalkParallel(ctx, verifyGetLinks, c, set.Visit)
174
+ err := dag.Walk(ctx, verifyGetLinks, c, set.Visit, dag.Concurrent())
175
176
if err != nil {
177
err = verboseCidError(err)