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
- Fix the consortium member organizations listed in the profile's Consortiums section per the wrapped error
- Ensure each member org's MSPDir and ID are valid and that orgs are not marked SkipAsForeign incorrectly
- 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.