Skip to content

Commit

Permalink
Return 500 if online request returns error
Browse files Browse the repository at this point in the history
Signed-off-by: khorshuheng <solemnpriest@gmail.com>
  • Loading branch information
khorshuheng committed Jan 22, 2021
1 parent e452ae5 commit e25aecb
Showing 1 changed file with 12 additions and 8 deletions.
20 changes: 12 additions & 8 deletions main.go
Original file line number Diff line number Diff line change
Expand Up @@ -65,16 +65,18 @@ func main() {
if len(requests) == 1 {
resp, err := client.GetOnlineFeatures(ctx, &requests[0])
if err != nil {
log.Fatalf("%v", err)
w.WriteHeader(500)
} else {
postProcessResponse(resp)
w.WriteHeader(200)
}
postProcessResponse(resp)
w.WriteHeader(200)
} else {
var wg sync.WaitGroup
wg.Add(len(requests))

fatalErrors := make(chan error)
wgDone := make(chan bool)
atLeastOneError := false

for _, request := range requests {
request := request
Expand All @@ -97,13 +99,15 @@ func main() {
case <-wgDone:
close(fatalErrors)
break
case err := <-fatalErrors:
close(fatalErrors)
log.Fatalf("%v", err)

case <-fatalErrors:
atLeastOneError = true
}

w.WriteHeader(200)
if atLeastOneError {
w.WriteHeader(500)
} else {
w.WriteHeader(200)
}
}

})
Expand Down

0 comments on commit e25aecb

Please sign in to comment.