Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitaly.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJacob Vosmaer <jacob@gitlab.com>2019-01-08 18:43:50 +0300
committerJacob Vosmaer <jacob@gitlab.com>2019-01-08 18:43:50 +0300
commit87ae7aeb4ad3ce6fe155263318d4ce83e42a2dd0 (patch)
treec97c5a203704d0d5b0e23fea7eb251e748034f3d
parent8243f5e7753fbab63591867a7983fa9f7ffa4263 (diff)
Decorate errors
-rw-r--r--internal/service/repository/raw_changes.go16
1 files changed, 10 insertions, 6 deletions
diff --git a/internal/service/repository/raw_changes.go b/internal/service/repository/raw_changes.go
index 360ca6936..a5ae0b51c 100644
--- a/internal/service/repository/raw_changes.go
+++ b/internal/service/repository/raw_changes.go
@@ -62,7 +62,7 @@ func getRawChanges(stream gitalypb.RepositoryService_GetRawChangesServer, repo *
diffCmd, err := git.Command(ctx, repo, "diff", "--raw", "-z", from, to)
if err != nil {
- return err
+ return fmt.Errorf("start git diff: %v", err)
}
p := rawdiff.NewParser(diffCmd)
@@ -75,12 +75,12 @@ func getRawChanges(stream gitalypb.RepositoryService_GetRawChangesServer, repo *
break // happy path
}
- return err
+ return fmt.Errorf("read diff: %v", err)
}
change, err := changeFromDiff(batch, d)
if err != nil {
- return err
+ return fmt.Errorf("build change from diff line: %v", err)
}
chunk = append(chunk, change)
@@ -88,7 +88,7 @@ func getRawChanges(stream gitalypb.RepositoryService_GetRawChangesServer, repo *
if len(chunk) >= chunkSize {
resp := &gitalypb.GetRawChangesResponse{RawChanges: chunk}
if err := stream.Send(resp); err != nil {
- return err
+ return fmt.Errorf("send response: %v", err)
}
chunk = nil
}
@@ -97,11 +97,15 @@ func getRawChanges(stream gitalypb.RepositoryService_GetRawChangesServer, repo *
if len(chunk) > 0 {
resp := &gitalypb.GetRawChangesResponse{RawChanges: chunk}
if err := stream.Send(resp); err != nil {
- return err
+ return fmt.Errorf("send response: %v", err)
}
}
- return diffCmd.Wait()
+ if err := diffCmd.Wait(); err != nil {
+ return fmt.Errorf("wait git diff: %v", err)
+ }
+
+ return nil
}
var zeroRegexp = regexp.MustCompile(`\A0+\z`)