{"record":{"id":"231922406f6d1ca4","repo":"hyperledger/fabric","slug":"received-success-for-a-seek-that-should-never-comp","errorCode":null,"errorMessage":"received success for a seek that should never complete","messagePattern":"received success for a seek that should never complete","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"common/deliverclient/blocksprovider/block_receiver.go","lineNumber":133,"sourceCode":"\t\tcase <-br.stopC:\n\t\t\tbr.logger.Infof(\"BlockReceiver got a signal to stop\")\n\t\t\terr = &ErrStopping{Message: \"got a signal to stop\"}\n\t\t\tbreak RecvLoop\n\t\t}\n\t}\n\n\t// cancel the sending side and wait for the `Start` goroutine to exit\n\tbr.cancelSendFunc()\n\t<-br.recvC\n\n\treturn err\n}\n\nfunc (br *BlockReceiver) processMsg(msg *orderer.DeliverResponse) (uint64, *common.Config, error) {\n\tswitch t := msg.GetType().(type) {\n\tcase *orderer.DeliverResponse_Status:\n\t\tif t.Status == common.Status_SUCCESS {\n\t\t\treturn 0, nil, errors.Errorf(\"received success for a seek that should never complete\")\n\t\t}\n\n\t\treturn 0, nil, errors.Errorf(\"received bad status %v from orderer\", t.Status)\n\tcase *orderer.DeliverResponse_Block:\n\t\tblockNum := t.Block.Header.Number\n\n\t\tif err := br.updatableBlockVerifier.VerifyBlock(t.Block); err != nil {\n\t\t\treturn 0, nil, errors.WithMessagef(err, \"block [%d] from orderer [%s] could not be verified\", blockNum, br.endpoint.String())\n\t\t}\n\n\t\terr := br.blockHandler.HandleBlock(br.channelID, t.Block)\n\t\tif err != nil {\n\t\t\treturn 0, nil, errors.WithMessagef(err, \"block [%d] from orderer [%s] could not be handled\", blockNum, br.endpoint.String())\n\t\t}\n\n\t\tbr.logger.Debugf(\"Handled block %d\", blockNum)\n\n\t\tvar channelConfig *common.Config","sourceCodeStart":115,"sourceCodeEnd":151,"githubUrl":"https://github.com/hyperledger/fabric/blob/2736b63f8fd5932511d56fe68b7039d15977f7f6/common/deliverclient/blocksprovider/block_receiver.go#L115-L151","documentation":"Deliver-protocol violation reported by the block receiver: the orderer returned Status_SUCCESS for an open-ended seek that should never complete — the remote orderer is misbehaving or speaking an incompatible protocol.","triggerScenarios":"Thrown at common/deliverclient/blocksprovider/block_receiver.go:133 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Check orderer version and health; restart or reconnect to a healthy orderer","Verify network connectivity/interception is not mangling deliver responses"],"exampleFix":null,"handlingStrategy":"fallback","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"}