Skip to content

Commit 6b4621f

Browse files
JoshVanLmikeee
andauthored
bindings/gcp/bucket: fix go styling (dapr#3829)
Signed-off-by: joshvanl <me@joshvanl.dev> Co-authored-by: Mike Nguyen <hey@mike.ee>
1 parent c586594 commit 6b4621f

File tree

1 file changed

+17
-28
lines changed

1 file changed

+17
-28
lines changed

bindings/gcp/bucket/bucket.go

Lines changed: 17 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ import (
3030

3131
"cloud.google.com/go/storage"
3232
"github.com/google/uuid"
33-
"go.uber.org/multierr"
3433
"google.golang.org/api/googleapi"
3534
"google.golang.org/api/iterator"
3635
"google.golang.org/api/option"
@@ -443,32 +442,33 @@ func (g *GCPStorage) bulkGet(ctx context.Context, req *bindings.InvokeRequest) (
443442
var allObjs []*storage.ObjectAttrs
444443
it := g.client.Bucket(g.metadata.Bucket).Objects(ctx, nil)
445444
for {
446-
attrs, err2 := it.Next()
447-
if err2 == iterator.Done {
445+
var attrs *storage.ObjectAttrs
446+
attrs, err = it.Next()
447+
if err == iterator.Done {
448448
break
449449
}
450450
allObjs = append(allObjs, attrs)
451451
}
452452

453453
var wg sync.WaitGroup
454-
objectsCh := make(chan objectData, len(allObjs))
455-
errCh := make(chan error, len(allObjs))
454+
wg.Add(len(allObjs))
456455

456+
objects := make([]objectData, len(allObjs))
457+
errs := make([]error, len(allObjs))
457458
for i, obj := range allObjs {
458-
wg.Add(1)
459459
go func(idx int, object *storage.ObjectAttrs) {
460460
defer wg.Done()
461461

462-
rc, err3 := g.client.Bucket(g.metadata.Bucket).Object(object.Name).NewReader(ctx)
463-
if err3 != nil {
464-
errCh <- err3
462+
rc, gerr := g.client.Bucket(g.metadata.Bucket).Object(object.Name).NewReader(ctx)
463+
if gerr != nil {
464+
errs[idx] = err
465465
return
466466
}
467467
defer rc.Close()
468468

469-
data, readErr := io.ReadAll(rc)
470-
if readErr != nil {
471-
errCh <- readErr
469+
data, gerr := io.ReadAll(rc)
470+
if gerr != nil {
471+
errs[idx] = err
472472
return
473473
}
474474

@@ -477,7 +477,7 @@ func (g *GCPStorage) bulkGet(ctx context.Context, req *bindings.InvokeRequest) (
477477
data = []byte(encoded)
478478
}
479479

480-
objectsCh <- objectData{
480+
objects[idx] = objectData{
481481
Name: object.Name,
482482
Data: data,
483483
Attrs: *object,
@@ -486,29 +486,18 @@ func (g *GCPStorage) bulkGet(ctx context.Context, req *bindings.InvokeRequest) (
486486
}
487487

488488
wg.Wait()
489-
close(errCh)
490489

491-
var multiErr error
492-
for err := range errCh {
493-
multierr.AppendInto(&multiErr, err)
490+
if err = errors.Join(errs...); err != nil {
491+
return nil, fmt.Errorf("gcp bucket binding error while reading objects: %w", err)
494492
}
495493

496-
if multiErr != nil {
497-
return nil, multiErr
498-
}
499-
500-
response := make([]objectData, 0, len(allObjs))
501-
for obj := range objectsCh {
502-
response = append(response, obj)
503-
}
504-
505-
jsonResponse, err := json.Marshal(response)
494+
response, err := json.Marshal(objects)
506495
if err != nil {
507496
return nil, fmt.Errorf("gcp bucket binding error while marshalling bulk get response: %w", err)
508497
}
509498

510499
return &bindings.InvokeResponse{
511-
Data: jsonResponse,
500+
Data: response,
512501
}, nil
513502
}
514503

0 commit comments

Comments
 (0)