func (s *objBlockAPIServer) ListDiff(request *pfs.ListDiffRequest, listDiffServer pfs.BlockAPI_ListDiffServer) (retErr error) { defer func(start time.Time) { s.Log(request, nil, retErr, time.Since(start)) }(time.Now()) if err := s.objClient.Walk(s.localServer.diffDir(), func(path string) error { diff := s.localServer.pathToDiff(path) if diff == nil { return fmt.Errorf("couldn't parse %s", path) } if diff.Shard == request.Shard { diffInfo, err := s.readDiff(diff) if err != nil { return err } if err := listDiffServer.Send(diffInfo); err != nil { return err } } return nil }); err != nil { return err } return nil }
func (s *localBlockAPIServer) ListDiff(request *pfs.ListDiffRequest, listDiffServer pfs.BlockAPI_ListDiffServer) (retErr error) { defer func(start time.Time) { s.Log(request, nil, retErr, time.Since(start)) }(time.Now()) if err := filepath.Walk(s.diffDir(), func(path string, info os.FileInfo, err error) error { diff := s.pathToDiff(path) if diff == nil { // likely a directory return nil } if diff.Shard == request.Shard { diffInfo, err := s.readDiff(diff) if err != nil { return err } if err := listDiffServer.Send(diffInfo); err != nil { return err } } return nil }); err != nil { return err } return nil }