hyperledger/fabric · error
Only Endorser Transactions are supported, provided type %d
Error message
Only Endorser Transactions are supported, provided type %d
What it means
extractValidationArtifacts checked the payload's channel header type and it is not HeaderType_ENDORSER_TRANSACTION. VSCC (v1.3) only validates endorser transactions, so any other header type is rejected with the offending numeric type.
Source
Thrown at core/handlers/validation/builtin/v13/validation_logic.go:141
return nil, err
}
// ...and the payload...
payl, err := protoutil.UnmarshalPayload(env.Payload)
if err != nil {
logger.Errorf("VSCC error: GetPayload failed, err %s", err)
return nil, err
}
chdr, err := protoutil.UnmarshalChannelHeader(payl.Header.ChannelHeader)
if err != nil {
return nil, err
}
// validate the payload type
if common.HeaderType(chdr.Type) != common.HeaderType_ENDORSER_TRANSACTION {
logger.Errorf("Only Endorser Transactions are supported, provided type %d", chdr.Type)
err = fmt.Errorf("Only Endorser Transactions are supported, provided type %d", chdr.Type)
return nil, err
}
// ...and the transaction...
tx, err := protoutil.UnmarshalTransaction(payl.Data)
if err != nil {
logger.Errorf("VSCC error: GetTransaction failed, err %s", err)
return nil, err
}
cap, err := protoutil.UnmarshalChaincodeActionPayload(tx.Actions[actionPosition].Payload)
if err != nil {
logger.Errorf("VSCC error: GetChaincodeActionPayload failed, err %s", err)
return nil, err
}
pRespPayload, err := protoutil.UnmarshalProposalResponsePayload(cap.Action.ProposalResponsePayload)
if err != nil {View on GitHub (pinned to 2736b63f8f)
Solutions
- Submit only endorser transactions through this validation path
- Route config/other transaction types to their own validators
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at core/handlers/validation/builtin/v13/validation_logic.go:141 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/697eee344e2a4ea8.
Report an issue: GitHub.