code: func MetadataFromConfigValue(configValue *common.ConfigValue) (*etcdraft.ConfigMetadata, error) {
  	consensusTypeValue := &orderer.ConsensusType{}
  	if err := proto.Unmarshal(configValue.Value, consensusTypeValue); err != nil {
  		return nil, errors.Wrap(err, "failed to unmarshal consensusType config update")
  	}
  
  	updatedMetadata := &etcdraft.ConfigMetadata{}
  	if err := proto.Unmarshal(consensusTypeValue.Metadata, updatedMetadata); err != nil {
  		return nil, errors.Wrap(err, "failed to unmarshal updated (new) etcdraft metadata configuration")
  	}
  
  	return updatedMetadata, nil
  }
docs: // MetadataFromConfigValue reads and translates configuration updates from config value into raft metadata