{"record":{"id":"5d840bf009cf33dd","repo":"thanos-io/thanos","slug":"fetch-label-names-from-store-s","errorCode":null,"errorMessage":"fetch label names from store %s","messagePattern":"fetch label names from store (.+?)","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"pkg/store/proxy.go","lineNumber":473,"sourceCode":"\t\tPartialResponseStrategy: originalRequest.PartialResponseStrategy,\n\t\tStart:                   originalRequest.Start,\n\t\tEnd:                     originalRequest.End,\n\t\tMatchers:                append(storeMatchers, MatchersForLabelSets(storeLabelSets)...),\n\t\tWithoutReplicaLabels:    originalRequest.WithoutReplicaLabels,\n\t\tHints:                   originalRequest.Hints,\n\t}\n\n\tvar (\n\t\twarnings []string\n\t\tnames    [][]string\n\t\tmtx      sync.Mutex\n\t\tg, gctx  = errgroup.WithContext(ctx)\n\t)\n\tfor _, st := range stores {\n\t\tg.Go(func() error {\n\t\t\tresp, err := st.LabelNames(gctx, r)\n\t\t\tif err != nil {\n\t\t\t\terr = errors.Wrapf(err, \"fetch label names from store %s\", st)\n\t\t\t\tif r.PartialResponseDisabled || r.PartialResponseStrategy == storepb.PartialResponseStrategy_ABORT {\n\t\t\t\t\treturn err\n\t\t\t\t}\n\n\t\t\t\tmtx.Lock()\n\t\t\t\twarnings = append(warnings, err.Error())\n\t\t\t\tmtx.Unlock()\n\t\t\t\treturn nil\n\t\t\t}\n\n\t\t\tmtx.Lock()\n\t\t\twarnings = append(warnings, resp.Warnings...)\n\t\t\tnames = append(names, resp.Names)\n\t\t\tmtx.Unlock()\n\n\t\t\treturn nil\n\t\t})\n\t}","sourceCodeStart":455,"sourceCodeEnd":491,"githubUrl":"https://github.com/thanos-io/thanos/blob/35b8b991177def87ed52dcf10f9b6d87f07282c8/pkg/store/proxy.go#L455-L491","documentation":"A fan-out LabelNames RPC to one store in the StoreAPI fan-out failed (connection error, store error, or cancelled errgroup context). The error names the failing store so the query can be attributed; whether it aborts the query or becomes a warning depends on the request's partial-response strategy.","triggerScenarios":"Thrown at pkg/store/proxy.go:473 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Check the failing store's address, health and logs (sidecar/store-gateway/rule)","Verify network reachability and gRPC TLS config between query and store","Retry the query; transient store restarts are a common cause","With partial-response enabled, rerun for the missing data once the store is healthy"],"exampleFix":null,"handlingStrategy":"try-catch","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"35b8b991177def87ed52dcf10f9b6d87f07282c8","analyzedAt":"2026-09-07T01:49:59.689Z","contentChangedAt":"2026-09-07T01:49:59.689Z","schemaVersion":2},"datasetVersion":"2026-09-15T23:17:13.987Z"}