From 839f7bd2b5789b326056d782c2f819a8b5bd3a1b Mon Sep 17 00:00:00 2001 From: vyzo Date: Mon, 5 Jul 2021 11:11:08 +0300 Subject: [PATCH] only occur check for DAGs --- blockstore/splitstore/splitstore.go | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/blockstore/splitstore/splitstore.go b/blockstore/splitstore/splitstore.go index d5d426aac..e8022db73 100644 --- a/blockstore/splitstore/splitstore.go +++ b/blockstore/splitstore/splitstore.go @@ -1205,19 +1205,21 @@ func (s *SplitStore) walkObjectIncomplete(c cid.Cid, walked *cid.Set, f, missing return nil } - // occurs check - has, err := s.hot.Has(c) - if err != nil { - return xerrors.Errorf("error occur checking %s: %w", c, err) - } - - if !has { - err = missing(c) - if err == errStopWalk { - return nil + // occurs check -- only for DAGs + if c.Prefix().Codec == cid.DagCBOR { + has, err := s.hot.Has(c) + if err != nil { + return xerrors.Errorf("error occur checking %s: %w", c, err) } - return err + if !has { + err = missing(c) + if err == errStopWalk { + return nil + } + + return err + } } if err := f(c); err != nil { @@ -1233,7 +1235,7 @@ func (s *SplitStore) walkObjectIncomplete(c cid.Cid, walked *cid.Set, f, missing } var links []cid.Cid - err = s.view(c, func(data []byte) error { + err := s.view(c, func(data []byte) error { return cbg.ScanForLinks(bytes.NewReader(data), func(c cid.Cid) { links = append(links, c) })