@cryptotaxi247 / kubo / commits / 22aeb1312

fix(core): look for MFS root in local repo only (#8661)

Co-authored-by: Andrew Gillis <11790789+gammazero@users.noreply.github.com>

Lucas Molas committed Oct 3, 2024 at 16:38 UTC 22aeb13124eb7a0f204c6af46135cb37823f76dd
1 file changed +5 -4
core/node/core.go
+5 -4
@@ -146,7 +146,7 @@ func Dag(bs blockservice.BlockService) format.DAGService {
146 }
147
148 // Files loads persisted MFS root
149 -func Files(mctx helpers.MetricsCtx, lc fx.Lifecycle, repo repo.Repo, dag format.DAGService) (*mfs.Root, error) {
149 +func Files(mctx helpers.MetricsCtx, lc fx.Lifecycle, repo repo.Repo, dag format.DAGService, bs blockstore.Blockstore) (*mfs.Root, error) {
150 dsk := datastore.NewKey("/local/filesroot")
151 pf := func(ctx context.Context, c cid.Cid) error {
152 rootDS := repo.Datastore()
@@ -172,7 +172,7 @@ func Files(mctx helpers.MetricsCtx, lc fx.Lifecycle, repo repo.Repo, dag format.
172 nd = unixfs.EmptyDirNode()
173 err := dag.Add(ctx, nd)
174 if err != nil {
175 - return nil, fmt.Errorf("failure writing to dagstore: %s", err)
175 + return nil, fmt.Errorf("failure writing filesroot to dagstore: %s", err)
176 }
177 case err == nil:
178 c, err := cid.Cast(val)
@@ -180,9 +180,10 @@ func Files(mctx helpers.MetricsCtx, lc fx.Lifecycle, repo repo.Repo, dag format.
180 return nil, err
181 }
182
183 - rnd, err := dag.Get(ctx, c)
183 + offineDag := merkledag.NewDAGService(blockservice.New(bs, offline.Exchange(bs)))
184 + rnd, err := offineDag.Get(ctx, c)
185 if err != nil {
185 - return nil, fmt.Errorf("error loading filesroot from DAG: %s", err)
186 + return nil, fmt.Errorf("error loading filesroot from dagservice: %s", err)
187 }
188
189 pbnd, ok := rnd.(*merkledag.ProtoNode)