hyperledger/fabric · error

could not create consortiums group

Error message

could not create consortiums group

What it means

Wrapping error in NewChannelGroup: NewConsortiumsGroup failed while building the Consortiums section (used for orderer-generated channels). Usually a bad consortium member organization or MSP configuration; the wrapped error names the member that failed.

Source

Thrown at internal/configtxgen/encoder/encoder.go:174

	var err error
	if conf.Orderer != nil {
		channelGroup.Groups[channelconfig.OrdererGroupKey], err = NewOrdererGroup(conf.Orderer, conf.Capabilities)
		if err != nil {
			return nil, errors.Wrap(err, "could not create orderer group")
		}
	}

	if conf.Application != nil {
		channelGroup.Groups[channelconfig.ApplicationGroupKey], err = NewApplicationGroup(conf.Application)
		if err != nil {
			return nil, errors.Wrap(err, "could not create application group")
		}
	}

	if conf.Consortiums != nil {
		channelGroup.Groups[channelconfig.ConsortiumsGroupKey], err = NewConsortiumsGroup(conf.Consortiums)
		if err != nil {
			return nil, errors.Wrap(err, "could not create consortiums group")
		}
	}

	channelGroup.ModPolicy = channelconfig.AdminsPolicyKey
	return channelGroup, nil
}

// NewOrdererGroup returns the orderer component of the channel configuration.  It defines parameters of the ordering service
// about how large blocks should be, how frequently they should be emitted, etc. as well as the organizations of the ordering network.
// It sets the mod_policy of all elements to "Admins".  This group is always present in any channel configuration.
func NewOrdererGroup(conf *genesisconfig.Orderer, channelCapabilities map[string]bool) (*cb.ConfigGroup, error) {
	if conf.OrdererType == "BFT" && !channelCapabilities["V3_0"] {
		return nil, errors.Errorf("orderer type BFT must be used with V3_0 channel capability: %v", channelCapabilities)
	}
	if len(conf.Addresses) > 0 && channelCapabilities["V3_0"] {
		return nil, errors.Errorf("global orderer endpoints exist, but can not be used with V3_0 capability: %v", conf.Addresses)
	}

View on GitHub (pinned to 2736b63f8f)

Solutions

  1. Fix the consortium member organizations listed in the profile's Consortiums section per the wrapped error
  2. Ensure each member org's MSPDir and ID are valid and that orgs are not marked SkipAsForeign incorrectly
  3. Remove the Consortiums section if consortiums are not needed for the generated config
Defensive patterns

Strategy: fallback

When it happens

Trigger: Thrown at internal/configtxgen/encoder/encoder.go:174 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/22fdf979a5ff57af. Report an issue: GitHub.