Copy metadata before spawning goroutine + prealloc maps (#10458)

In `(*cacheObjects).GetObjectNInfo` copy the metadata before spawning a goroutine.

Clean up a few map[string]string copies as well, reducing allocs and simplifying the code.

Fixes #10426
This commit is contained in:
Klaus Post
2020-09-10 11:37:22 -07:00
committed by GitHub
parent ce6cef6855
commit b7438fe4e6
16 changed files with 47 additions and 63 deletions

View File

@@ -331,8 +331,9 @@ func logIf(ctx context.Context, err error, errKind ...interface{}) {
API = req.API
}
tags := make(map[string]string)
for _, entry := range req.GetTags() {
kv := req.GetTags()
tags := make(map[string]string, len(kv))
for _, entry := range kv {
tags[entry.Key] = entry.Val
}