hyperledger/fabric · error
bad org definition for org %s
Error message
bad org definition for org %s
What it means
encoder.NewOrdererOrgGroup failed while printing an org with -printOrg that has OrdererEndpoints defined: the org's definition (MSP config, endpoints, or capabilities context) is invalid for building an orderer org group.
Source
Thrown at cmd/configtxgen/main.go:127
}
err = protolator.DeepMarshalJSON(os.Stdout, env)
if err != nil {
return fmt.Errorf("malformed transaction contents: %s", err)
}
return nil
}
func doPrintOrg(t *genesisconfig.TopLevel, printOrg string) error {
for _, org := range t.Organizations {
if org.Name == printOrg {
if len(org.OrdererEndpoints) > 0 {
// An Orderer OrgGroup
channelCapabilities := t.Capabilities["Channel"]
og, err := encoder.NewOrdererOrgGroup(org, channelCapabilities)
if err != nil {
return errors.Wrapf(err, "bad org definition for org %s", org.Name)
}
if err := protolator.DeepMarshalJSON(os.Stdout, &ordererext.DynamicOrdererOrgGroup{ConfigGroup: og}); err != nil {
return errors.Wrapf(err, "malformed org definition for org: %s", org.Name)
}
return nil
}
// Otherwise assume it is an Application OrgGroup, where the encoder is not strict whether anchor peers exist or not
ag, err := encoder.NewApplicationOrgGroup(org)
if err != nil {
return errors.Wrapf(err, "bad org definition for org %s", org.Name)
}
if err := protolator.DeepMarshalJSON(os.Stdout, &peerext.DynamicApplicationOrgGroup{ConfigGroup: ag}); err != nil {
return errors.Wrapf(err, "malformed org definition for org: %s", org.Name)
}
return nil
}View on GitHub (pinned to 2736b63f8f)
Solutions
- Fix the org's MSP and orderer endpoint configuration in configtx.yaml
- Check the wrapped error for the specific invalid field
- Ensure the Channel capability referenced by the org is correctly specified
Defensive patterns
Strategy: try-catch
When it happens
Trigger: Thrown at cmd/configtxgen/main.go:127 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/28e5fd5ce5f4ef56.
Report an issue: GitHub.