hyperledger/fabric · error

received success for a seek that should never complete

Error message

received success for a seek that should never complete

What it means

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.

Source

Thrown at common/deliverclient/blocksprovider/block_receiver.go:133

		case <-br.stopC:
			br.logger.Infof("BlockReceiver got a signal to stop")
			err = &ErrStopping{Message: "got a signal to stop"}
			break RecvLoop
		}
	}

	// cancel the sending side and wait for the `Start` goroutine to exit
	br.cancelSendFunc()
	<-br.recvC

	return err
}

func (br *BlockReceiver) processMsg(msg *orderer.DeliverResponse) (uint64, *common.Config, error) {
	switch t := msg.GetType().(type) {
	case *orderer.DeliverResponse_Status:
		if t.Status == common.Status_SUCCESS {
			return 0, nil, errors.Errorf("received success for a seek that should never complete")
		}

		return 0, nil, errors.Errorf("received bad status %v from orderer", t.Status)
	case *orderer.DeliverResponse_Block:
		blockNum := t.Block.Header.Number

		if err := br.updatableBlockVerifier.VerifyBlock(t.Block); err != nil {
			return 0, nil, errors.WithMessagef(err, "block [%d] from orderer [%s] could not be verified", blockNum, br.endpoint.String())
		}

		err := br.blockHandler.HandleBlock(br.channelID, t.Block)
		if err != nil {
			return 0, nil, errors.WithMessagef(err, "block [%d] from orderer [%s] could not be handled", blockNum, br.endpoint.String())
		}

		br.logger.Debugf("Handled block %d", blockNum)

		var channelConfig *common.Config

View on GitHub (pinned to 2736b63f8f)

Solutions

  1. Check orderer version and health; restart or reconnect to a healthy orderer
  2. Verify network connectivity/interception is not mangling deliver responses
Defensive patterns

Strategy: fallback

When it happens

Trigger: Thrown at common/deliverclient/blocksprovider/block_receiver.go:133 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of hyperledger/fabric@2736b63f8f (2026-09-04). Data as JSON: /api/errors/231922406f6d1ca4. Report an issue: GitHub.