Trove/disk-space-coefficient

Description

 * This feature is being proposed as part of backup size validation process.

Justification

 * For certain reasons not all native backup tools are able to do data streaming (like innobackupex, mysqldump). So when restore process gets initialized there's possible case when proposed by user disk space(volume, flavor, ephemeral disk) has not enough space to pull and unpack backup from its storage.

Benefits

 * By adding specific per-datastore coefficient deployers are able to define how much times bigger given instance storage should be to be able to accomplish restoring.

Impacts

 * From user perspective. API service could raise certain exceptions if given instance storage is not enough to pull and unpack given backup.

Configuration

 * Configuration parameters are API service specific

-

Database
No changes -

New routes
No changes

Modifications to existing
No changes

Behaviour
API will raize HTTP Bad Request (code 400) or HTTP Forbidden (403) if mentioned storage size is not enough to pull and/or unpack backup.

Internal API
-

From trove-api to trove-taskamanger
No changes

-

From trove-taskamanger to trove-guestagent
No changes