hyperledger/fabric · error · VSCCEndorsementPolicyError
the following existing collections are missing in the new co
Error message
the following existing collections are missing in the new collection configuration package: %v
What it means
checkForMissingCollections compared old and new collection configs during an upgrade and found existing collections absent from the new package — collections cannot be dropped once deployed; they can only be added.
Source
Thrown at core/handlers/validation/builtin/v12/validation_logic.go:288
// number of new collections are allowed.
for _, oldCollectionConfig := range oldCollectionConfigs {
oldCollection := oldCollectionConfig.GetStaticCollectionConfig()
// It cannot be nil
if oldCollection == nil {
return policyErr(fmt.Errorf("unknown collection configuration type"))
}
// All old collection must exist in the new collection config package
oldCollectionName := oldCollection.GetName()
_, ok := newCollectionsMap[oldCollectionName]
if !ok {
missingCollections = append(missingCollections, oldCollectionName)
}
}
if len(missingCollections) > 0 {
return policyErr(fmt.Errorf("the following existing collections are missing in the new collection configuration package: %v",
missingCollections))
}
return nil
}
func checkForModifiedCollectionsBTL(newCollectionsMap map[string]*pb.StaticCollectionConfig, oldCollectionConfigs []*pb.CollectionConfig,
) error {
var modifiedCollectionsBTL []string
// In the new collection config package, ensure that the block to live value is not
// modified for the existing collections.
for _, oldCollectionConfig := range oldCollectionConfigs {
oldCollection := oldCollectionConfig.GetStaticCollectionConfig()
// It cannot be nil
if oldCollection == nil {
return policyErr(fmt.Errorf("unknown collection configuration type"))View on GitHub (pinned to 2736b63f8f)
Solutions
- Include all previously defined collections in the upgrade's collection config
- Append new collections rather than replacing the whole list
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at core/handlers/validation/builtin/v12/validation_logic.go:288 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/39fe3b1102dbb8b0.
Report an issue: GitHub.