1
0
mirror of https://github.com/ipfs/kubo.git synced 2025-06-26 23:53:19 +08:00

don't resolve children unnecessarily when listing a sharded directory

We only need to get the child if it's a shard.

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
This commit is contained in:
Steven Allen
2018-03-27 15:01:32 -07:00
parent 3cc4658af1
commit e06436d090

View File

@ -289,13 +289,13 @@ func (ds *Shard) loadChild(ctx context.Context, i int) (child, error) {
return nil, fmt.Errorf("invalid link name '%s'", lnk.Name) return nil, fmt.Errorf("invalid link name '%s'", lnk.Name)
} }
nd, err := lnk.GetNode(ctx, ds.dserv)
if err != nil {
return nil, err
}
var c child var c child
if len(lnk.Name) == ds.maxpadlen { if len(lnk.Name) == ds.maxpadlen {
nd, err := lnk.GetNode(ctx, ds.dserv)
if err != nil {
return nil, err
}
pbnd, ok := nd.(*dag.ProtoNode) pbnd, ok := nd.(*dag.ProtoNode)
if !ok { if !ok {
return nil, dag.ErrNotProtobuf return nil, dag.ErrNotProtobuf