{"record":{"id":"b566e52a3c598221","repo":"hyperledger/fabric","slug":"expected-queryresult-of-either-peermembershipresul","errorCode":null,"errorMessage":"expected QueryResult of either PeerMembershipResult or Error but got %v instead","messagePattern":"expected QueryResult of either PeerMembershipResult or Error but got (.+?) instead","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"discovery/client/client.go","lineNumber":389,"sourceCode":"\t\t\tqueryType: protoext.ConfigQueryType,\n\t\t\tk:         ch,\n\t\t}\n\n\t\tif err != nil {\n\t\t\tresp[key] = errors.New(err.Content)\n\t\t\tcontinue\n\t\t}\n\n\t\tresp[key] = config\n\t}\n\treturn nil\n}\n\nfunc (resp response) mapPeerMembership(key2Index map[string]int, r *discovery.Response, qt protoext.QueryType) error {\n\tfor k, index := range key2Index {\n\t\tmembersRes, err := protoext.ResponseMembershipAt(r, index)\n\t\tif membersRes == nil && err == nil {\n\t\t\treturn errors.Errorf(\"expected QueryResult of either PeerMembershipResult or Error but got %v instead\", r.Results[index])\n\t\t}\n\n\t\tkey := key{\n\t\t\tqueryType: qt,\n\t\t\tk:         k,\n\t\t}\n\n\t\tif err != nil {\n\t\t\tresp[key] = errors.New(err.Content)\n\t\t\tcontinue\n\t\t}\n\n\t\tpeers, err2 := peersForChannel(membersRes, qt)\n\t\tif err2 != nil {\n\t\t\treturn errors.Wrap(err2, \"failed constructing peer membership out of response\")\n\t\t}\n\n\t\tresp[key] = peers","sourceCodeStart":371,"sourceCodeEnd":407,"githubUrl":"https://github.com/hyperledger/fabric/blob/2736b63f8fd5932511d56fe68b7039d15977f7f6/discovery/client/client.go#L371-L407","documentation":"mapPeerMembership indexed a discovery response result that is neither a PeerMembershipResult nor an Error — an unexpected QueryResult variant for a membership query, usually a client/peer version mismatch.","triggerScenarios":"Thrown at discovery/client/client.go:389 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Align discovery client and peer versions","Handle the unexpected result type explicitly"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"2736b63f8fd5932511d56fe68b7039d15977f7f6","analyzedAt":"2026-09-04T08:52:36.465Z","contentChangedAt":"2026-09-04T08:52:36.465Z","schemaVersion":2},"datasetVersion":"2026-09-08T10:18:20.063Z"}