hyperledger/fabric · error

config does not contain orderer config

Error message

config does not contain orderer config

What it means

checkResources guard: res.OrdererConfig() returned false — the channel config bundle contains no Orderer group, so batch size, consensus type, and policies cannot be read. The channel configuration is incomplete for an ordering node.

Source

Thrown at orderer/common/multichannel/ledger_resources.go:23

*/

package multichannel

import (
	"github.com/hyperledger/fabric-lib-go/bccsp"
	"github.com/hyperledger/fabric-protos-go-apiv2/common"
	"github.com/hyperledger/fabric/common/channelconfig"
	"github.com/hyperledger/fabric/common/ledger/blockledger"
	"github.com/hyperledger/fabric/protoutil"
	"github.com/pkg/errors"
)

// checkResources makes sure that the channel config is compatible with this binary and logs sanity checks
func checkResources(res channelconfig.Resources) error {
	channelconfig.LogSanityChecks(res)
	oc, ok := res.OrdererConfig()
	if !ok {
		return errors.New("config does not contain orderer config")
	}
	if err := oc.Capabilities().Supported(); err != nil {
		return errors.WithMessagef(err, "config requires unsupported orderer capabilities: %s", err)
	}
	if err := res.ChannelConfig().Capabilities().Supported(); err != nil {
		return errors.WithMessagef(err, "config requires unsupported channel capabilities: %s", err)
	}
	return nil
}

// checkResourcesOrPanic invokes checkResources and panics if an error is returned
func checkResourcesOrPanic(res channelconfig.Resources) {
	if err := checkResources(res); err != nil {
		logger.Panicf("[channel %s] %s", res.ConfigtxValidator().ChannelID(), err)
	}
}

type mutableResources interface {

View on GitHub (pinned to 2736b63f8f)

Solutions

  1. Re-create the channel with a configtx that includes the Orderer group
  2. Verify the config block used to join the channel was generated for an ordering channel
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at orderer/common/multichannel/ledger_resources.go:23 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/ce24942a160d1b67. Report an issue: GitHub.