The cinder.exception Module

Cinder base exception handling.

Includes decorator for re-raising Cinder-type exceptions.

SHOULD include dedicated exception logging.

exception AdminRequired(message=None, **kwargs)

Bases: cinder.exception.NotAuthorized

message = 'User does not have admin privileges'
exception BackupFailedToGetVolumeBackend(message=None, **kwargs)

Bases: cinder.exception.NotFound

message = 'Failed to identify volume backend.'
exception BackupInvalidCephArgs(message=None, **kwargs)

Bases: cinder.exception.Invalid

message = 'Invalid Ceph args provided for backup rbd operation'
exception BackupNotFound(message=None, **kwargs)

Bases: cinder.exception.NotFound

message = 'Backup %(backup_id)s could not be found.'
exception BackupOperationError(message=None, **kwargs)

Bases: cinder.exception.Invalid

message = 'An error has occurred during backup operation'
exception BackupRBDOperationFailed(message=None, **kwargs)

Bases: cinder.exception.Invalid

message = 'Backup RBD operation failed'
exception BadHTTPResponseStatus(message=None, **kwargs)

Bases: cinder.exception.CinderException

message = 'Bad HTTP response status %(status)s'
exception CinderException(message=None, **kwargs)

Bases: exceptions.Exception

Base Cinder Exception

To correctly use this class, inherit from it and define a ‘message’ property. That message will get printf’d with the keyword arguments provided to the constructor.

code = 500
headers = {}
message = 'An unknown exception occurred.'
safe = False
exception ConfigNotFound(message=None, **kwargs)

Bases: cinder.exception.NotFound

message = 'Could not find config at %(path)s'
exception ConvertedException(code=0, title='', explanation='')

Bases: webob.exc.WSGIHTTPException

exception CoraidESMBadCredentials(message=None, **kwargs)

Bases: cinder.exception.CoraidException

message = 'Login on ESM failed.'
exception CoraidESMBadGroup(message=None, **kwargs)

Bases: cinder.exception.CoraidException

message = 'Group with name "%(group_name)s" not found.'
exception CoraidESMConfigureError(message=None, **kwargs)

Bases: cinder.exception.CoraidException

message = 'ESM configure request failed: %(message)s.'
exception CoraidESMNotAvailable(message=None, **kwargs)

Bases: cinder.exception.CoraidException

message = 'Coraid ESM not available with reason: %(reason)s.'
exception CoraidESMReloginFailed(message=None, **kwargs)

Bases: cinder.exception.CoraidException

message = 'Relogin on ESM failed.'
exception CoraidException(message=None, **kwargs)

Bases: cinder.exception.CinderException

message = 'Coraid Cinder Driver exception.'
exception CoraidJsonEncodeFailure(message=None, **kwargs)

Bases: cinder.exception.CoraidException

message = 'Failed to encode json data.'
exception DeviceUnavailable(message=None, **kwargs)

Bases: cinder.exception.Invalid

message = 'The device in the path %(path)s is unavailable: %(reason)s'
exception DriverNotInitialized(message=None, **kwargs)

Bases: cinder.exception.CinderException

message = "Volume driver '%(driver)s' not initialized."
exception Duplicate(message=None, **kwargs)

Bases: cinder.exception.CinderException

exception DuplicateSfVolumeNames(message=None, **kwargs)

Bases: cinder.exception.Duplicate

message = 'Detected more than one volume with name %(vol_name)s'
exception Error

Bases: exceptions.Exception

exception ExportFailure(message=None, **kwargs)

Bases: cinder.exception.Invalid

message = 'Failed to export for volume: %(reason)s'
exception FailedCmdWithDump(message=None, **kwargs)

Bases: cinder.exception.CinderException

message = 'Operation failed with status=%(status)s. Full dump: %(data)s'
exception FileNotFound(message=None, **kwargs)

Bases: cinder.exception.NotFound

message = 'File %(file_path)s could not be found.'
exception GlanceConnectionFailed(message=None, **kwargs)

Bases: cinder.exception.CinderException

message = 'Connection to glance failed: %(reason)s'
exception GlanceMetadataExists(message=None, **kwargs)

Bases: cinder.exception.Invalid

message = 'Glance metadata cannot be updated, key %(key)s exists for volume id %(volume_id)s'
exception GlanceMetadataNotFound(message=None, **kwargs)

Bases: cinder.exception.NotFound

message = 'Glance metadata for volume/snapshot %(id)s cannot be found.'
exception GlusterfsException(message=None, **kwargs)

Bases: cinder.exception.CinderException

message = 'Unknown Gluster exception'
exception GlusterfsNoSharesMounted(message=None, **kwargs)

Bases: cinder.exception.NotFound

message = 'No mounted Gluster shares found'
exception GlusterfsNoSuitableShareFound(message=None, **kwargs)

Bases: cinder.exception.NotFound

message = 'There is no share which can host %(volume_size)sG'
exception HostBinaryNotFound(message=None, **kwargs)

Bases: cinder.exception.NotFound

message = 'Could not find binary %(binary)s on host %(host)s.'
exception HostNotFound(message=None, **kwargs)

Bases: cinder.exception.NotFound

message = 'Host %(host)s could not be found.'
exception ISCSITargetNotFoundForVolume(message=None, **kwargs)

Bases: cinder.exception.NotFound

message = 'No target id found for volume %(volume_id)s.'
exception ImageCopyFailure(message=None, **kwargs)

Bases: cinder.exception.Invalid

message = 'Failed to copy image to volume: %(reason)s'
exception ImageNotAuthorized(message=None, **kwargs)

Bases: cinder.exception.CinderException

message = 'Not authorized for image %(image_id)s.'
exception ImageNotFound(message=None, **kwargs)

Bases: cinder.exception.NotFound

message = 'Image %(image_id)s could not be found.'
exception ImageUnacceptable(message=None, **kwargs)

Bases: cinder.exception.Invalid

message = 'Image %(image_id)s is unacceptable: %(reason)s'
exception InstanceNotFound(message=None, **kwargs)

Bases: cinder.exception.NotFound

message = 'Instance %(instance_id)s could not be found.'
exception Invalid(message=None, **kwargs)

Bases: cinder.exception.CinderException

code = 400
message = 'Unacceptable parameters.'
exception Invalid3PARDomain(message=None, **kwargs)

Bases: cinder.exception.CinderException

message = 'Invalid 3PAR Domain: %(err)s'
exception InvalidAuthKey(message=None, **kwargs)

Bases: cinder.exception.Invalid

message = 'Invalid auth key: %(reason)s'
exception InvalidBackup(message=None, **kwargs)

Bases: cinder.exception.Invalid

message = 'Invalid backup: %(reason)s'
exception InvalidConfigurationValue(message=None, **kwargs)

Bases: cinder.exception.Invalid

message = 'Value "%(value)s" is not valid for configuration option "%(option)s"'
exception InvalidContentType(message=None, **kwargs)

Bases: cinder.exception.Invalid

message = 'Invalid content type %(content_type)s.'
exception InvalidHost(message=None, **kwargs)

Bases: cinder.exception.Invalid

message = 'Invalid host: %(reason)s'
exception InvalidImageRef(message=None, **kwargs)

Bases: cinder.exception.Invalid

message = 'Invalid image href %(image_href)s.'
exception InvalidInput(message=None, **kwargs)

Bases: cinder.exception.Invalid

message = 'Invalid input received: %(reason)s'
exception InvalidParameterValue(message=None, **kwargs)

Bases: cinder.exception.Invalid

message = '%(err)s'
exception InvalidQoSSpecs(message=None, **kwargs)

Bases: cinder.exception.Invalid

message = 'Invalid qos specs: %(reason)s'
exception InvalidQuotaValue(message=None, **kwargs)

Bases: cinder.exception.Invalid

message = 'Change would make usage less than 0 for the following resources: %(unders)s'
exception InvalidReservationExpiration(message=None, **kwargs)

Bases: cinder.exception.Invalid

message = 'Invalid reservation expiration %(expire)s.'
exception InvalidResults(message=None, **kwargs)

Bases: cinder.exception.Invalid

message = 'The results are invalid.'
exception InvalidSnapshot(message=None, **kwargs)

Bases: cinder.exception.Invalid

message = 'Invalid snapshot: %(reason)s'
exception InvalidUUID(message=None, **kwargs)

Bases: cinder.exception.Invalid

message = 'Expected a uuid but received %(uuid)s.'
exception InvalidVolume(message=None, **kwargs)

Bases: cinder.exception.Invalid

message = 'Invalid volume: %(reason)s'
exception InvalidVolumeAttachMode(message=None, **kwargs)

Bases: cinder.exception.Invalid

message = "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
exception InvalidVolumeMetadata(message=None, **kwargs)

Bases: cinder.exception.Invalid

message = 'Invalid metadata: %(reason)s'
exception InvalidVolumeMetadataSize(message=None, **kwargs)

Bases: cinder.exception.Invalid

message = 'Invalid metadata size: %(reason)s'
exception InvalidVolumeType(message=None, **kwargs)

Bases: cinder.exception.Invalid

message = 'Invalid volume type: %(reason)s'
exception KeyManagerError(message=None, **kwargs)

Bases: cinder.exception.CinderException

msg_fmt = 'key manager error: %(reason)s'
exception MalformedRequestBody(message=None, **kwargs)

Bases: cinder.exception.CinderException

message = 'Malformed message body: %(reason)s'
exception MalformedResponse(message=None, **kwargs)

Bases: cinder.exception.Invalid

message = 'Malformed response to command %(cmd)s: %(reason)s'
exception MetadataCopyFailure(message=None, **kwargs)

Bases: cinder.exception.Invalid

message = 'Failed to copy metadata to volume: %(reason)s'
exception MetadataCreateFailure(message=None, **kwargs)

Bases: cinder.exception.Invalid

message = 'Failed to create metadata for volume: %(reason)s'
exception MetadataUpdateFailure(message=None, **kwargs)

Bases: cinder.exception.Invalid

message = 'Failed to update metadata for volume: %(reason)s'
exception MigrationNotFound(message=None, **kwargs)

Bases: cinder.exception.NotFound

message = 'Migration %(migration_id)s could not be found.'
exception NfsException(message=None, **kwargs)

Bases: cinder.exception.CinderException

message = 'Unknown NFS exception'
exception NfsNoSharesMounted(message=None, **kwargs)

Bases: cinder.exception.NotFound

message = 'No mounted NFS shares found'
exception NfsNoSuitableShareFound(message=None, **kwargs)

Bases: cinder.exception.NotFound

message = 'There is no share which can host %(volume_size)sG'
exception NoValidHost(message=None, **kwargs)

Bases: cinder.exception.CinderException

message = 'No valid host was found. %(reason)s'
exception NotAuthorized(message=None, **kwargs)

Bases: cinder.exception.CinderException

code = 403
message = 'Not authorized.'
exception NotFound(message=None, **kwargs)

Bases: cinder.exception.CinderException

code = 404
message = 'Resource could not be found.'
safe = True
exception OverQuota(message=None, **kwargs)

Bases: cinder.exception.CinderException

message = 'Quota exceeded for resources: %(overs)s'
exception ParameterNotFound(message=None, **kwargs)

Bases: cinder.exception.NotFound

message = 'Could not find parameter %(param)s'
exception PasteAppNotFound(message=None, **kwargs)

Bases: cinder.exception.NotFound

message = "Could not load paste app '%(name)s' from %(path)s"
exception PolicyNotAuthorized(message=None, **kwargs)

Bases: cinder.exception.NotAuthorized

message = "Policy doesn't allow %(action)s to be performed."
exception ProjectQuotaNotFound(message=None, **kwargs)

Bases: cinder.exception.QuotaNotFound

message = 'Quota for project %(project_id)s could not be found.'
exception QoSSpecsAssociateFailed(message=None, **kwargs)

Bases: cinder.exception.CinderException

message = 'Failed to associate qos_specs: %(specs_id)s with type %(type_id)s.'
exception QoSSpecsCreateFailed(message=None, **kwargs)

Bases: cinder.exception.CinderException

message = 'Failed to create qos_specs: %(name)s with specs %(qos_specs)s.'
exception QoSSpecsDisassociateFailed(message=None, **kwargs)

Bases: cinder.exception.CinderException

message = 'Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s.'
exception QoSSpecsExists(message=None, **kwargs)

Bases: cinder.exception.Duplicate

message = 'QoS Specs %(specs_id)s already exists.'
exception QoSSpecsInUse(message=None, **kwargs)

Bases: cinder.exception.CinderException

message = 'QoS Specs %(specs_id)s is still associated with entities.'
exception QoSSpecsKeyNotFound(message=None, **kwargs)

Bases: cinder.exception.NotFound

message = 'QoS spec %(specs_id)s has no spec with key %(specs_key)s.'
exception QoSSpecsNotFound(message=None, **kwargs)

Bases: cinder.exception.NotFound

message = 'No such QoS spec %(specs_id)s.'
exception QoSSpecsUpdateFailed(message=None, **kwargs)

Bases: cinder.exception.CinderException

message = 'Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s.'
exception QuotaClassNotFound(message=None, **kwargs)

Bases: cinder.exception.QuotaNotFound

message = 'Quota class %(class_name)s could not be found.'
exception QuotaError(message=None, **kwargs)

Bases: cinder.exception.CinderException

code = 413
headers = {'Retry-After': 0}
message = 'Quota exceeded: code=%(code)s'
safe = True
exception QuotaNotFound(message=None, **kwargs)

Bases: cinder.exception.NotFound

message = 'Quota could not be found'
exception QuotaResourceUnknown(message=None, **kwargs)

Bases: cinder.exception.QuotaNotFound

message = 'Unknown quota resources %(unknown)s.'
exception QuotaUsageNotFound(message=None, **kwargs)

Bases: cinder.exception.QuotaNotFound

message = 'Quota usage for project %(project_id)s could not be found.'
exception ReservationNotFound(message=None, **kwargs)

Bases: cinder.exception.QuotaNotFound

message = 'Quota reservation %(uuid)s could not be found.'
exception SSHInjectionThreat(message=None, **kwargs)

Bases: cinder.exception.CinderException

message = 'SSH command injection detected: %(command)s'
exception SchedulerHostFilterNotFound(message=None, **kwargs)

Bases: cinder.exception.NotFound

message = 'Scheduler Host Filter %(filter_name)s could not be found.'
exception SchedulerHostWeigherNotFound(message=None, **kwargs)

Bases: cinder.exception.NotFound

message = 'Scheduler Host Weigher %(weigher_name)s could not be found.'
exception ServiceNotFound(message=None, **kwargs)

Bases: cinder.exception.NotFound

message = 'Service %(service_id)s could not be found.'
exception ServiceUnavailable(message=None, **kwargs)

Bases: cinder.exception.Invalid

message = 'Service is unavailable at this time.'
exception SfAccountNotFound(message=None, **kwargs)

Bases: cinder.exception.NotFound

message = 'Unable to locate account %(account_name)s on Solidfire device'
exception SfJsonEncodeFailure(message=None, **kwargs)

Bases: cinder.exception.CinderException

message = 'Failed to load data into json format'
exception SnapshotIsBusy(message=None, **kwargs)

Bases: cinder.exception.CinderException

message = 'deleting snapshot %(snapshot_name)s that has dependent volumes'
exception SnapshotLimitExceeded(message=None, **kwargs)

Bases: cinder.exception.QuotaError

message = 'Maximum number of snapshots allowed (%(allowed)d) exceeded'
exception SnapshotMetadataNotFound(message=None, **kwargs)

Bases: cinder.exception.NotFound

message = 'Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s.'
exception SnapshotNotFound(message=None, **kwargs)

Bases: cinder.exception.NotFound

message = 'Snapshot %(snapshot_id)s could not be found.'
exception SolidFireAPIDataException(message=None, **kwargs)

Bases: cinder.exception.SolidFireAPIException

message = 'Error in SolidFire API response: data=%(data)s'
exception SolidFireAPIException(message=None, **kwargs)

Bases: cinder.exception.CinderException

message = 'Bad response from SolidFire API'
exception SwiftConnectionFailed(message=None, **kwargs)

Bases: cinder.exception.CinderException

message = 'Connection to swift failed: %(reason)s'
exception TransferNotFound(message=None, **kwargs)

Bases: cinder.exception.NotFound

message = 'Transfer %(transfer_id)s could not be found.'
exception UnknownCmd(message=None, **kwargs)

Bases: cinder.exception.Invalid

message = 'Unknown or unsupported command %(cmd)s'
exception VolumeAdminMetadataNotFound(message=None, **kwargs)

Bases: cinder.exception.NotFound

message = 'Volume %(volume_id)s has no administration metadata with key %(metadata_key)s.'
exception VolumeAttached(message=None, **kwargs)

Bases: cinder.exception.Invalid

message = 'Volume %(volume_id)s is still attached, detach volume first.'
exception VolumeBackendAPIException(message=None, **kwargs)

Bases: cinder.exception.CinderException

message = 'Bad or unexpected response from the storage volume backend API: %(data)s'
exception VolumeIsBusy(message=None, **kwargs)

Bases: cinder.exception.CinderException

message = 'deleting volume %(volume_name)s that has snapshot'
exception VolumeLimitExceeded(message=None, **kwargs)

Bases: cinder.exception.QuotaError

message = 'Maximum number of volumes allowed (%(allowed)d) exceeded'
exception VolumeMetadataNotFound(message=None, **kwargs)

Bases: cinder.exception.NotFound

message = 'Volume %(volume_id)s has no metadata with key %(metadata_key)s.'
exception VolumeMigrationFailed(message=None, **kwargs)

Bases: cinder.exception.CinderException

message = 'Volume migration failed: %(reason)s'
exception VolumeNotFound(message=None, **kwargs)

Bases: cinder.exception.NotFound

message = 'Volume %(volume_id)s could not be found.'
exception VolumeSizeExceedsAvailableQuota(message=None, **kwargs)

Bases: cinder.exception.QuotaError

message = 'Requested volume or snapshot exceeds allowed Gigabytes quota'
exception VolumeTypeCreateFailed(message=None, **kwargs)

Bases: cinder.exception.CinderException

message = 'Cannot create volume_type with name %(name)s and specs %(extra_specs)s'
exception VolumeTypeEncryptionExists(message=None, **kwargs)

Bases: cinder.exception.Invalid

message = 'Volume type encryption for type %(type_id)s already exists.'
exception VolumeTypeExists(message=None, **kwargs)

Bases: cinder.exception.Duplicate

message = 'Volume Type %(id)s already exists.'
exception VolumeTypeExtraSpecsNotFound(message=None, **kwargs)

Bases: cinder.exception.NotFound

message = 'Volume Type %(volume_type_id)s has no extra specs with key %(extra_specs_key)s.'
exception VolumeTypeInUse(message=None, **kwargs)

Bases: cinder.exception.CinderException

message = 'Volume Type %(volume_type_id)s deletion is not allowed with volumes present with the type.'
exception VolumeTypeNotFound(message=None, **kwargs)

Bases: cinder.exception.NotFound

message = 'Volume type %(volume_type_id)s could not be found.'
exception VolumeTypeNotFoundByName(message=None, **kwargs)

Bases: cinder.exception.VolumeTypeNotFound

message = 'Volume type with name %(volume_type_name)s could not be found.'
exception WillNotSchedule(message=None, **kwargs)

Bases: cinder.exception.CinderException

message = "Host %(host)s is not up or doesn't exist."
exception ZadaraAttachmentsNotFound(message=None, **kwargs)

Bases: cinder.exception.NotFound

message = 'Failed to retrieve attachments for volume %(name)s'
exception ZadaraInvalidAttachmentInfo(message=None, **kwargs)

Bases: cinder.exception.Invalid

message = 'Invalid attachment info for volume %(name)s: %(reason)s'
exception ZadaraServerCreateFailure(message=None, **kwargs)

Bases: cinder.exception.CinderException

message = 'Unable to create server object for initiator %(name)s'
exception ZadaraServerNotFound(message=None, **kwargs)

Bases: cinder.exception.NotFound

message = 'Unable to find server object for initiator %(name)s'
exception ZadaraVPSANoActiveController(message=None, **kwargs)

Bases: cinder.exception.CinderException

message = 'Unable to find any active VPSA controller'

Previous topic

The cinder.db.sqlalchemy.models Module

Next topic

The cinder.image.glance Module

This Page