Skip to content

Commit

Permalink
Use the correct channel for sending errors
Browse files Browse the repository at this point in the history
  • Loading branch information
fd0 committed Oct 11, 2015
1 parent 86c8328 commit db85ab8
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 3 deletions.
3 changes: 1 addition & 2 deletions checker/checker.go
Original file line number Diff line number Diff line change
Expand Up @@ -505,13 +505,12 @@ func (c *Checker) Structure(errChan chan<- error, done <-chan struct{}) {
treeIDChan := make(chan backend.ID)
treeJobChan1 := make(chan treeJob)
treeJobChan2 := make(chan treeJob)
treeErrChan := make(chan TreeError)

var wg sync.WaitGroup
for i := 0; i < defaultParallelism; i++ {
wg.Add(2)
go loadTreeWorker(c.repo, treeIDChan, treeJobChan1, done, &wg)
go c.checkTreeWorker(treeJobChan2, treeErrChan, done, &wg)
go c.checkTreeWorker(treeJobChan2, errChan, done, &wg)
}

filterTrees(trees, treeIDChan, treeJobChan1, treeJobChan2, done)
Expand Down
9 changes: 8 additions & 1 deletion cmd/restic/cmd_check.go
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,14 @@ func (cmd CmdCheck) Execute(args []string) error {

for err := range errChan {
errorsFound = true
fmt.Fprintf(os.Stderr, "error: %v\n", err)
if e, ok := err.(checker.TreeError); ok {
fmt.Fprintf(os.Stderr, "error for tree %v:\n", e.ID.Str())
for _, treeErr := range e.Errors {
fmt.Fprintf(os.Stderr, " %v\n", treeErr)
}
} else {
fmt.Fprintf(os.Stderr, "error: %v\n", err)
}
}

for _, id := range chkr.UnusedBlobs() {
Expand Down

0 comments on commit db85ab8

Please sign in to comment.