hyperledger/fabric · error
Error unmarshalling envelope: %s
Error message
Error unmarshalling envelope: %s
What it means
Returned by doInspectChannelCreateTx when protoutil.UnmarshalEnvelope fails on the file contents: the data is not a valid protobuf-encoded common.Envelope. The file was read successfully but is not a channel-creation transaction.
Source
Thrown at cmd/configtxgen/main.go:108
}
err = protolator.DeepMarshalJSON(os.Stdout, block)
if err != nil {
return fmt.Errorf("malformed block contents: %s", err)
}
return nil
}
func doInspectChannelCreateTx(inspectChannelCreateTx string) error {
logger.Info("Inspecting transaction")
data, err := os.ReadFile(inspectChannelCreateTx)
if err != nil {
return fmt.Errorf("could not read channel create tx: %s", err)
}
logger.Info("Parsing transaction")
env, err := protoutil.UnmarshalEnvelope(data)
if err != nil {
return fmt.Errorf("Error unmarshalling envelope: %s", err)
}
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 {View on GitHub (pinned to 2736b63f8f)
Solutions
- Confirm the file is a binary channel-creation transaction, not a block or text
- Re-create the tx with configtxgen -outputCreateChannelTx and retry
Defensive patterns
Strategy: try-catch
When it happens
Trigger: Thrown at cmd/configtxgen/main.go:108 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/7fd8c78b3cd0d52e.
Report an issue: GitHub.